lostyazilim
tr.link

Php'de framework'e geçmek?

17 Mesajlar 2.958 Okunma
lstbozum
tr.link

ismail03 ismail03 WM Aracı Kullanıcı
  • Üyelik 28.11.2013
  • Yaş/Cinsiyet 30 / E
  • Meslek Ameliyathane Hemşiresi
  • Konum Afyon
  • Ad Soyad I** Ç**
  • Mesajlar 2633
  • Beğeniler 344 / 487
  • Ticaret 12, (%100)
Merhaba daha önce kodladığım bir scripti Framework yapısında tekrar kodlamak istiyorum.Php bilgim iyi ancak fw yapısında daha önce script kodlamadım nasıl bir yol izlemeliyim?
Bunu istememdeki asıl amaç kod düzeni ve psr4 standartlarını daha iyi kavramak
Korkutan tarafı
Php de eklenti ve tema olayı (Symfony gibi) korkutmakta o yüzden önerilerinizi almak istedim.
Şimdiden teşekkür ederim

Hayırlı Ramazanlar

 

 

wmaraci
reklam

Vixo Vixo vpnscript.net Kullanıcı
  • Üyelik 09.02.2014
  • Yaş/Cinsiyet 29 / E
  • Meslek Web Yazılım
  • Konum Düzce
  • Ad Soyad M** K**
  • Mesajlar 237
  • Beğeniler 29 / 57
  • Ticaret 1, (%100)
Açıkcası bende artık framework a geçiş düşünüyorum, https://laracasts.com/series/laravel-from-scratch-2018 bu seriyi bitirdim ve sanırım o kadarda korkutucu değil. Umarım faydası olur sanada.
 

 

ismail03 ismail03 WM Aracı Kullanıcı
  • Üyelik 28.11.2013
  • Yaş/Cinsiyet 30 / E
  • Meslek Ameliyathane Hemşiresi
  • Konum Afyon
  • Ad Soyad I** Ç**
  • Mesajlar 2633
  • Beğeniler 344 / 487
  • Ticaret 12, (%100)
Laravel gereksinimleri nedeniyle yanaşmamıştım.
Rediks sınıf yapılarında falan iyiyim ama Mvc yapısını çözmek birde psr4 __autoload(spl_autoload_register()) modeli kafamı karışrtırıyor.
deneyimli kişilerden fikir almak istedim :) teşekkür ederim
 

 

3579 3579 WM Aracı Anonim Üyelik
  • Üyelik 30.01.2012
  • Yaş/Cinsiyet - /
  • Meslek
  • Konum
  • Ad Soyad ** **
  • Mesajlar 2434
  • Beğeniler 686 / 1151
  • Ticaret 1, (%100)
Autoloader işleminde manual olarak bir şey yapmıyorsunuz, composer otomatik olarak psr4 standartlarında autoloader oluşturuyor.

Frameworke geçmeden önce composer kullanımında iyileşin. Frameworkdeki paket yönetimini zaten composer üstleniyor. Composer ile istediğiniz paketi uygulamaya dahil ediyorsunuz, include, require vb işlemlerle uğraşmıyorsunuz. Dahil ettiğiniz her paket için composer otomatik olarak include işlemini gerçekleştiriyor.
 

 

wmaraci
wmaraci

ismail03 ismail03 WM Aracı Kullanıcı
  • Üyelik 28.11.2013
  • Yaş/Cinsiyet 30 / E
  • Meslek Ameliyathane Hemşiresi
  • Konum Afyon
  • Ad Soyad I** Ç**
  • Mesajlar 2633
  • Beğeniler 344 / 487
  • Ticaret 12, (%100)

Kakarotto adlı üyeden alıntı

Autoloader işleminde manual olarak bir şey yapmıyorsunuz, composer otomatik olarak psr4 standartlarında autoloader oluşturuyor.

Frameworke geçmeden önce composer kullanımında iyileşin. Frameworkdeki paket yönetimini zaten composer üstleniyor. Composer ile istediğiniz paketi uygulamaya dahil ediyorsunuz, include, require vb işlemlerle uğraşmıyorsunuz. Dahil ettiğiniz her paket için composer otomatik olarak include işlemini gerçekleştiriyor.


Anlıyorum hocam fakat kendimizin yazdığı eklentileri veya dosyları ne yapacağız ?
her zaman composer kullanmıyoruz mesela ben bahsettiğim projede composeri hiç kullanmadım (anlış bilmiyorsam composer git kütüphanelerini kolay yoldan indirmeye yarayan araç)
Framework yapısını iyi kavrayabilmek lazım bunu sorun olarak görüyorum.Codel ,Zend CakePhp fw lerini kavrayabilmek için önce fw yapısını çözmek gerekmez mi?
bundan sonra kafamda eklenti ve tema modulleri var.:D
 

 

3579 3579 WM Aracı Anonim Üyelik
  • Üyelik 30.01.2012
  • Yaş/Cinsiyet - /
  • Meslek
  • Konum
  • Ad Soyad ** **
  • Mesajlar 2434
  • Beğeniler 686 / 1151
  • Ticaret 1, (%100)
İşte kendi yazdığınız php dosyaları için composer'da psr-4 klasörünü belirtirseniz, composer otomatik olarak onları da uygulamaya dahil ediyor.

composer.json dosyasına yapacağınız belirlemelere göre işlem yapar composer. Örneğin;

{
"autoload": {
"psr-4": {
"Ornek\\": "src/"
}
}
}


Bu kodun anlamı src/ klasöründeki Ornek\\ namespace'si ile başlayan her dosyayı uygulamaya dahil et.

Bu tanımlamayı yaptığınızda composer src/ klasörü altındaki her dosya/klasörü önce bir tarar, taradıktan sonra dosyaların içeriğinde

"namespace Ornek\...." şeklinde başlayan her şeyi uygulamaya dahil eder. Diğer dosyalara dokunmaz.

Bu yolla framework'e kendi yazdığınız kodları da ekleyebilirsiniz.

Yeni bir eklenti/paket kurmak isterseniz "composer require paketAdi" şeklinde paketi dahil edersiniz, composer otomatik olarak indirir ve autoload işlemini yapar.
Dediğim gibi önce composer'in sitesine girip dökümanları baştan sona okuyun.
 

 

ismail03 ismail03 WM Aracı Kullanıcı
  • Üyelik 28.11.2013
  • Yaş/Cinsiyet 30 / E
  • Meslek Ameliyathane Hemşiresi
  • Konum Afyon
  • Ad Soyad I** Ç**
  • Mesajlar 2633
  • Beğeniler 344 / 487
  • Ticaret 12, (%100)

Kakarotto adlı üyeden alıntı

İşte kendi yazdığınız php dosyaları için composer'da psr-4 klasörünü belirtirseniz, composer otomatik olarak onları da uygulamaya dahil ediyor.

composer.json dosyasına yapacağınız belirlemelere göre işlem yapar composer. Örneğin;

{
"autoload": {
"psr-4": {
"Ornek\\": "src/"
}
}
}


Bu kodun anlamı src/ klasöründeki Ornek\\ namespace'si ile başlayan her dosyayı uygulamaya dahil et.

Bu tanımlamayı yaptığınızda composer src/ klasörü altındaki her dosya/klasörü önce bir tarar, taradıktan sonra dosyaların içeriğinde

"namespace Ornek\...." şeklinde başlayan her şeyi uygulamaya dahil eder. Diğer dosyalara dokunmaz.

Bu yolla framework'e kendi yazdığınız kodları da ekleyebilirsiniz.

Yeni bir eklenti/paket kurmak isterseniz "composer require paketAdi" şeklinde paketi dahil edersiniz, composer otomatik olarak indirir ve autoload işlemini yapar.
Dediğim gibi önce composer'in sitesine girip dökümanları baştan sona okuyun.


Zamanızı alıyorum kusura bakmayın sadece bilgi almak için soruyorum psr 4 standartlarında composer kullanmadan yapsak daha iyi olmaz mı?(Proje proje değşir) hem öğrenmiş olur hemde mvc yapısını kavrarız. Hazır kod bir süre sonra alışkanlık yapıyo :)
 

 

3579 3579 WM Aracı Anonim Üyelik
  • Üyelik 30.01.2012
  • Yaş/Cinsiyet - /
  • Meslek
  • Konum
  • Ad Soyad ** **
  • Mesajlar 2434
  • Beğeniler 686 / 1151
  • Ticaret 1, (%100)

ismail03 adlı üyeden alıntı

Zamanızı alıyorum kusura bakmayın sadece bilgi almak için soruyorum psr 4 standartlarında composer kullanmadan yapsak daha iyi olmaz mı?(Proje proje değşir) hem öğrenmiş olur hemde mvc yapısını kavrarız. Hazır kod bir süre sonra alışkanlık yapıyo :)


MVC yapısıyla PSR-4'ün tam olarak bir alakası yok. PSR-4 bir kodlama standartıdır. Kod yazarken uymanız gereken kuralları belirtir. MVC ise Model (Database katmanı), View (Template katmanı), Controller (Kontrol işlemleri katmanı). Yani kodları katman katman ayırmakla aynı şey.

Popüler frameworkler autoload işlemleri için composer autoloader kullanır. Ayrıca bir projeyi production moduna soktuğunuzda artık psr-4 yerine, classmap kullanmak gerekir. Classmap uygulamadaki tüm sınıfların namespacelerini ve isimleri, dosya isimleri ile bir diziye kaydetme, o dizi içinden çağrıldığında uygulamaya dahil etmeye yarar.

Composer size bu olanağı da sağlıyor. Zira binlerce dosyanın olduğu bir projede, her bir dosyayı tek tek listeye eklemek veya listeden çıkarmak ölüm gibi gelir. Bir de atıyorum başka bir eklentiyi/paketi ekleyecekseniz bunları da tek tek classmap kısmına eklemeniz gerekir. Bu noktada da otomatik olarak composer ile güncelleme işlemi daha mantıklı gelir.

Elbette composer'a muhtaç değilsiniz. Composer'in autoloader dosyalarını incelerseniz, mantığı kavrar kendi autoloader fonksiyonunuzu yazabilirsiniz.

Ayrıca Symfony gibi frameworkleri kurmak için composer komutu kullandığınızda autoloader işlemi zaten otomatik composer tarafından gerçekleştiriliyor.
ismail03

kişi bu mesajı beğendi.

Croizer Croizer Thank you Jobs Banlı Kullanıcı
  • Üyelik 13.10.2018
  • Yaş/Cinsiyet 34 / E
  • Meslek PHP Developer
  • Konum Ankara
  • Ad Soyad F** S**
  • Mesajlar 57
  • Beğeniler 38 / 7
  • Ticaret 0, (%0)
Bence ilk olarak laravele hiç bulaşma kafan karışabilir soğursun. Laravel bir velinimet öğrendikten sonra inan çok rahat ediyorsun. Mvc mantığını anlamak istiyorsan önce titan mvc ile başla bununla proje yaz. Laravelin mini hali diyebiliriz. Linki veriyorum içerisinde dökümantasyonuda var ve türkçe. Bununla 2 proje geliştir mantık oturur Laravele geçersin.

Kurulumu falan dökümantasyonda yazıyor. Kolay gelsin.

http://v2.titanphp.com/doc
 

 

ismail03 ismail03 WM Aracı Kullanıcı
  • Üyelik 28.11.2013
  • Yaş/Cinsiyet 30 / E
  • Meslek Ameliyathane Hemşiresi
  • Konum Afyon
  • Ad Soyad I** Ç**
  • Mesajlar 2633
  • Beğeniler 344 / 487
  • Ticaret 12, (%100)

Croizer adlı üyeden alıntı

Bence ilk olarak laravele hiç bulaşma kafan karışabilir soğursun. Laravel bir velinimet öğrendikten sonra inan çok rahat ediyorsun. Mvc mantığını anlamak istiyorsan önce titan mvc ile başla bununla proje yaz. Laravelin mini hali diyebiliriz. Linki veriyorum içerisinde dökümantasyonuda var ve türkçe. Bununla 2 proje geliştir mantık oturur Laravele geçersin.

Kurulumu falan dökümantasyonda yazıyor. Kolay gelsin.

http://v2.titanphp.com/doc


titan mvc yi incleliyordum bende elimde bir tane örnek uygulama olsa daha rahat anlarım ama sitede bulamadım
Bunda get post isteklerini nasıl yapacağımı çözemedim :(
 

 

wmaraci
wmaraci
Konuyu toplam 3 kişi okuyor. (0 kullanıcı ve 3 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al