Yeni başlayanlar için Laravel Framework

Laravel en basit tabiriyle ücretsiz (açık kaynaklı) PHP frameworküdür. 2011’de Taylor Otwell tarafından geliştirildi. Evet yanlış anlamadınız, tek kişi tarafından.

Model, View ve Controller mimarisine sahiptir. Laravel aslında bünyesinde Codeigniter, yii ve benzeri farklı frameworkleri de barındırır bu da haliyle onu daha güçlü ve esnek yapmaktadır. Sıfırdan bir web uygulaması geliştirme işini Laravel ile yapmak son derece hızlıdır.

Laravel’de yaygın olarak duyulan iki ana bileşen vardır; Composer ve Artisan.

Composer, tüm geliştirme ve ürün ortamı için gerekli olan bağımlılıkları, kütüphaneleri yönetildiği ve projeye dahil edildiği bir araçtır. Geliştiriciye bir Laravel projesi oluşturması imkanı verir.

Artisan ise Laravel’deki komut satırı birimidir (CLI). Laravel bünyesinde çok fazla CLI komutu barındırır.

Laravel’in başlıca özellikleri;

  • Test edilebilir yapıya sahiptir,
  • Diğer frameworklere göre kolay ve çok fazla özelliğe sahip olan Routing yapısı vardır,
  • View tarafında işleri çok fazla kolaylaştıran Blade Template Motoruna sahiptir,
  • Controller tarafında sorguları kolaylaştıran Query Builder yapısına sahiptir,
  • Bir çok popüler yazılım teknolojisini bünyesinde barındırır (loglama, ön bellekleme, mail işlemleri, şifreleme, ftp işlemleri, soket işlemleri, popüler arayüz uygulamaları vb.),
  • Modülerdir.

Yeni başlayanlar için zor mu ?

Aslında bu sadece Laravel için geçerli değil. Hangi teknolojiye yeni başlarsanız aslında bir süre zorlanacaksınız. Hatta bir çoğundan bu süreç içerisinde vazgeçebilirsiniz. Açıkçası biraz programlama bilgisi ile Laravel dokümantasyonunu çok iyi okuyarak işleri yoluna koyabilirsiniz. Burada kilit işlem, dokümantasyonun takibidir. Sonrasında pratik ve kısa bir zaman içerisinde kavrayacaksınızdır.

Laravel ile yeni başlayanların çok yaygın karşılaştıkları sorunlar var. Üzerinde çalıştığım bir çok Laravel projesi olmasına rağmen, bir çoğu ile sık sık ben de karşılaşıyorum. İlk alacağınız sorun yaygın olarak composer yüklemedir. Çoğu zaman yeni başlayanlar bu adımda karmaşa yaşıyorlar. Bunun asıl nedeni bu adıma gelmeden Laravel’in kuruluma hazır olması için ön koşulları yerine getirmek. Bunun devamında composer ile çok fazla işiniz olacaktır. Bağımlılıkların takibi, güncellenmesi ve hatta kullanımdan kaldırılmasını takip edip, projenizi devamlı güncel tutmalısınız.

Composer’ı kurduk. Bir sürü klasör ve dosya geldi projenize. Bunlar nedir? diye sorduğunuzu duyar gibiyim. Yani sadece birkaç bin dosya. Hiç endişelenmeyin bu klasörler ve dosyalarla neredeyse hiç işiniz olmayacak. Onlar arka planda sizin için çalışıyor olacaklar.

Herşeyin yolunda gittiğini varsayalım. Tüm kurulumlar yapıldı. paketler indirildi. Artık Laravel’i çalıştırmak istiyorsunuz. Alacağınız bir diğer hata ise HTTP ERROR 500.

Büyük olasılıkla Laravel sürümü ile PHP sürümü arasında bir sorun yaşıyorsunuz. PHP 7.x altında bir versiyona sahipseniz bu hatayı almanız muhtemeldir. Sadece sorun bu olmayabilir, doğru olmayan bir Laravel kurulum konfigürasyonu da buna sebep olabilir. Bu nedenle dokümantasyon okumak bu noktada da çok önemlidir.

Bu aşamalara gelmek için temel kod satırı komutlarını bilmeniz gerektiğini söylemeden geçmek istemedim. Bunun nedeni cmd aracı ile çok fazla komut satırı işlemlerine girmeniz olacaktır. Doğru dizinde olup olmadığınızı kontrol etmek isteyebilirsiniz. Aslında bunu günümüzdeki geliştirme ortamları çok kolaylaştırıyor ama siz yine de bunu bilseniz iyi olur. Doğru dizinde olmazsanız php artisan komutlarının çalışmıyor olduğunu göreceksiniz.

Dönelim 500 hatasına. Çevre değişkenlerimizi tuttuğumuz .env dosyasının doğru ayarlandığı da çok önemlidir. Dokümantasyon bu konuda size yardımcı olacaktır. Mutlaka projenizin bir keyi olmalıdır ve bunu oluşturmak için php artisan key:generate komutu sizin için gerçekleştirecektir.

Bir başka sebebi de Laravel projeyi /public proje dizininden init eder. Eğer sunucu ayarlarını siz yapıyorsanız bunu dikkate almalısınız aksi halde projeniz sunucu üzerinde koşamayacaktır.

Tabi ki daha bir çok fazla sorunlarla karşılaşmanız muhtemeldir. Çok fazla dokümantasyon ve kaynak internette mevcuttur, bu size çok yararlı olacaktır.

Son olarak Laravel bünyesinde CMS (içerik yönetim sistemi) barındırmaz. Sadece bir PHP frameworküdür. Siz dilerseniz kendinize Laravel kullanarak bir CMS yazabilirsiniz. Bu nedenle yeni başlayanlar için tavsiyem temel web geliştirme ortamlarını bilmeleri (HTML, CSS, JS), tabi ki PHP yazılım diline hakim olmaları, OOP kavramlarını bilmeleri ve MySql bir dereceye kadar gelmiş olmaları çok büyük avantaj sağlayacaktır.

{{ Laravel }}