Laravel Framework Nedir?
Özellik | Açıklama | Yararları |
---|---|---|
Eloquent | Aktif kayıt sistemi kullanan ORM sistemi üzerine kurulmuş bir veri tabanı. | SQL kullanmadan veri tabanından bağımsız şekilde çalışma ve projenin diğer SQL tabanlarına çevrilebilmesine olanak sağlar. |
Route | Gelişmiş bir rota yapısı barındırmaktadır. | URL üzerinde birden farklı metod ile düzenleme yapabilme ve farklı metodlar aracılığıyla API rotası oluşturabilme. |
Blade Engine | View yapısı olarak kullanılan bir mekanizmadır. | Neyin nerede olduğuna daha kolay hâkim olarak projeyi hızlandırabilir. |
Migrations | Veri tabanı için tablo oluşturabilen, tablodaki işlemleri yaparak istenildiği durumda geri alınabilmesine imkân veren bir sistem. | Herhangi bir veri tabanı ara yüzüne ihtiyaç duymadan tablolar oluşturup, bu tabloları veri tabanına gönderebilme. |
Unit Test | Birden çok web geliştiricisinin birlikte geliştirdiği projelerde kullanılabilen bir test yapısı. | Projelerin verdiği sonuçların tutarlılığını kontrol edebilmek için testler oluşturulabilir. |
Paginaton | Kolay bir şekilde çalışılabilen sayfalama yapısı oluşturmak için kullanılan özellik. | Hızlı ve kolay bir şekilde sayfalama yapısını oluşturabilir. |
Performans | Verimli şekilde çalışan cache yapısı ve kolay bağlantı kurulmasına izin veren Redis sistemi ve Queue sistemi gibi bileşenler kullanılmaktadır. | Yüksek performanslı ve hızlı uygulamalar oluşturabilir. |
Form Doğrulama | Birçok farklı veri türünü, veri tabanı ile karşılaştırarak geliştiricilere sonuç sağlayan sistem. | Form doğrulama işlemi saniyeler içerisinde hiçbir kod yazmadan tamamlanabilir. |
Çoklu Dil | Kolay bir fonksiyon yapısı ile çoklu dilde projeler geliştirilmesine olanak sağlayan sistem. | Her dil için ayrı klasör oluşturularak kullanılan yapılar kısa sürede tüm dillere uyarlanabilmektedir. |
Mail ve Broadcasting | SwiftMailer sistemi ve Mailgun sistem paketleri ile diğer tüm sistemlere kolaylıkla mail gönderilebilen yapı. | Hızlı ve kolay bir şekilde mail gönderimi ve takibi sağlar. |
Laravel, basit ve anlaşılabilir kod yapısı ile temel uygulamalardan en gelişmiş projelere kadar gerekli ihtiyaçları karşılayabilen bir PHP frameworktür. MVC yapısına sahiptir ve PHP ile OOP’nin tüm özelliklerinden yararlanarak web uygulamaları geliştirilmesini sağlar. Açık kaynak kodlu bir sistemdir. Laravel, “web sanatçılarının PHP framework’ü” cümlesini slogan olarak kullanmaktadır. İhtiyaç duyulan gelişmiş özelliklerin birçoğunu üzerinde barındırmaktadır. Bu sayede PHP geliştiricileri için sağladığı imkanlarla sloganının hakkını vermektedir.
Laravel kolay öğrenilebilir yapısıyla amatör ya da profesyonel tüm web geliştiricileri tarafından tercih edilmektedir. Bu nedenle, geliştiricilerin kullandığı sürüm kontrol sistemi olan Github üzerinde en çok takip edilen PHP framework projesidir. Geliştiriciler, bilmedikleri konular hakkında yardım isteyebilecekleri geniş bir Laravel topluluğu oluşturmaktadır. Açık kaynak kodlu yapısı sayesinde diğer geliştiriciler, birbirlerinin siteleri üzerinde geliştirme yapabilmektedir. Geliştiriciler için işleri bu kadar kolaylaştırması, bu PHP framework için hızlı bir büyüme sağlamıştır.
Laravel Özellikleri Neler?
Laravel, web geliştiricilerinin yapmak isteyecekleri pek çok şeyi, içerdiği özellikler ve çalışma yapısı ile birlikte sunmaktadır. Basit yapısı ve barındırdığı özellikleri ile proje geliştirme süresini de oldukça kısaltmaktadır. Laravel, farklı ihtiyaçlara karşılık veren özellikleri ile ön plana çıkmaktadır.
Eloquent: Bu yapı, aktif kayıt sistemi kullanan ORM sistemi üzerine kurulmuş bir veri tabanıdır. Eloquent sisteminde oluşturulan tablolar obje sınıflarıyla haberleşerek bağlantı kurmaktadır. Bu bağlantı sayesinde web geliştiricileri, SQL kullanmadan veri tabanından bağımsız şekilde çalışabilmektedir. Bu sayede, MySQL ile başlanan bir projenin daha sonra diğer SQL tabanlarına çevrilebilmesine olanak sağlar.
Route: Frameworkler için rota yapısı oldukça önemlidir. Laravel ise fazlasıyla gelişmiş bir rota yapısı barındırmaktadır. Url’nin hangi metoda hangi yöntemle gideceği kolay bir şekilde tanımlanabilmektedir. Bu sayede, Url üzerinde birden farklı metod ile düzenleme yapılabilmektedir. Farklı metodlar aracılığıyla API rotası oluşturularak mobil ve masaüstü uygulamalarda uyumlu bir şekilde kullanılabilmektedir. Ayrıca rota yönlendirmeler, filtrelerden ve kontrollerden geçirilerek Controller classlara gönderilebilmektedir.
Blade Engine: View yapısı olarak Blade Engine kullanılmaktadır. Genellikle frameworklerde MVC yapısı kullanılırken işlenen veri view kısmına da gönderilerek kullanılır. Bu yapılarda echo ve foreach metodları içinde blade syntaxlar kullanılır. Bu sayede neyin nerede olduğuna daha kolay hâkim olarak proje hızlandırılabilir.
Migrations: Laravel içerisinde veri tabanı için tablo oluşturulabilen, tablodaki işlemleri yaparak istenildiği durumda geri alınabilmesine imkân veren, versiyonlama yaparak da çalışılabilen bir sistemdir. Herhangi bir veri tabanı ara yüzüne ihtiyaç duymadan tablolar oluşturup, bu tabloları veri tabanına gönderebilmeyi sağlar. Bu sayede, proje başka bir ortama taşındığında bile veri tabanı oluşturmak yerine uygulamada bulunan yapı kullanılarak sistem hazır hale getirilebilmektedir.
Unit Test: Birden çok web geliştiricisinin birlikte geliştirdiği projelerde kullanılabilen önemli bir test yapısıdır. Bu yapı sayesinde projelerin verdiği sonuçların tutarlılığını kontrol edebilmek için testler oluşturulur.
Paginaton: Kolay bir şekilde çalışılabilen sayfalama yapısı oluşturmak için kullanılan özelliktir.
Performans: Laravel performansa oldukça önem vermektedir. Bu nedenle performans geliştirme amaçlı barındırdığı pek çok bileşen bulunmaktadır. Verimli şekilde çalışan cache yapısı ve kolay bağlantı kurulmasına izin veren Redis sistemi bu bileşenlere örnek oluşturmaktadır. Uzun işlem sürelerine sahip sistemler için Queue sistemi bulunmaktadır. Laravel ’in performansı açık kaynak kodlu olması sayesinde yazılımcıların katkılarıyla her geçen gün daha da artmaktadır.
Form Doğrulama: PHP altyapısına sahip projelerde doğrulama işlemleri uzun zamanlar alabilmektedir. Form doğrulama işlemi için çok fazla seçenek bulunması bu iş için ayrılan zamanı arttırmaktadır. Fakat Laravel, içerisinde bulunan özellik sayesinde birçok farklı veri türünü, veri tabanı ile karşılaştırarak geliştiricilere sonuç sağlayabilmektedir. Bu sayede form doğrulama işlemi saniyeler içerisinde hiçbir kod yazmadan tamamlanabilir.
Çoklu Dil: Bu framework çoklu dil ile çalışmak konusunda da iyi bir sistem barındırmaktadır. Kolay bir fonksiyon yapısı ile çoklu dilde projeler geliştirilmesine olanak sağlamaktadır. Her dil için ayrı klasör oluşturularak kullanılan yapılar kısa sürede tüm dillere uyarlanabilmektedir.
Mail ve Broadcasting: İçerisinde bulunan SwiftMailer sistemi ile diğer tüm sistemlere kolaylıkla mail gönderilebilmesini sağlamaktadır. Mailgun sistem paketleri ise API üzerinden mail gönderilebilmesi için kullanılabilmektedir. Yine içerisinde bulunan diğer bir özellik olan Broadcast sistemi, telefonlara bildirim ve SMS gönderilebilmesine yardımcı olmaktadır.
Tüm bu özellikler anlatım aşamasında karmaşık gibi görünse de Laravel ile proje geliştirilirken kullanması oldukça kolaydır ve web geliştiricileri için faydalıdır. PHP framework içerisinde daha fazla özelliği barındırmaktadır. Tüm bu özellikler kullanılarak web sitesi geliştirilirken, oldukça geniş topluluk yapısıyla da etkileşim sağlanabilir.
Laravel Özellikleri ile Neler Yapılabilir?
Laravel içinde ORM bulunmaktadır. Veri tabanında her tablo karşısında bir model sınıfı bulunur. Böylece çalışırken sorgulama yapılması gereken durumlarda kısa cümlelerle daha kolay sorgulamalar yapılabilir. Ayrıca farklı veri tabanlarında da değişiklik yapmadan sorgu yapılabilir.
Bahsettiğimiz Blade yapısı kullanılarak html ve PHP kodlar birbirinden kolaylıkla ayrılabilir. Farklı kod yapıları üzerinde karışıklık yaşamadan çalışılabilir. Böylece çalışmalarda rahatlık sağlanır.
Kimlik doğrulama yapısı Laravel içerisinde bulunmaktadır. Kullanıcı işlemleri kimlik doğrulama sistemi sayesinde basit kodlarla eklenebilir. Bu işlemleri yapmak için ayrıca kimlik doğrulama sistemi kullanılmasına gerek kalmaz.
Bağımlılık yöneticisi olarak Composer kullanılması sayesinde gereken bileşenler projeye eklenebilir. Composer yapısı ile bileşenlerde herhangi bir çakışma yaşamadan çoklu giriş yapılabilir. Böylece farklı paneller oluşturularak çalışılabilir.
Kullanılan sistemler ve bileşenler, Laravel’ in performansına ve kullanıcı deneyimine olumlu katkılar yapmaktadır. Bu sayede en rahat ve kolay kullanılan PHP framework olarak ön plana çıkmaktadır. Bu framework, proje yönetimi sürecinde odaklanmayı ve işten alınan keyfi arttırmayı başarabilmektedir.
Laravel ile Web Sitesi Kurma Eğitimi
Laravel, öğrenilmesi ve kullanılması kolay bir frameworktür. Bu framework öğrenilerek ister hobi amaçlı ister profesyonel olarak yönetilebilir bir web sitesi kodlamak mümkündür. Bireysel olarak kullanılacak blog ve hobi sitelerinin yanı sıra kurumsal alanda hizmet verebilecek büyük projelere sahip internet sitelerinin kurulmasına da olanak sağlamaktadır.
Bu internet sitelerini kodlayabilmek için Laravel’ in yapısını öğrenmek gereklidir. Bunun için Enstitü tarafından verilen online eğitimler faydalı olmaktadır. Yazılım ve bilişim eğitimleri arasında yer alan Laravel ile WebSitesi Kurma eğitimi size bu framework yapısını öğrenebilmeniz için yardımcı olacaktır. Eğitime katılarak Laravel aracılığıyla web sitesi kodlamanın temellerini öğrenebilirsiniz. Böylece web sitesi kurma ve geliştirme alanında kendinizi geliştirerek bu alanda fırsatlar yakalayabilirsiniz.
Bu eğitimde göreceğiniz konular şu şekildedir: Laravel’ in ne olduğunu öğrenerek nasıl kurabileceğinizi göreceksiniz. Kullanılan dosya yapısını kavrayacaksınız. Daha önce yazımızda bahsettiğimiz ve önemli olan blade yapısının ne olduğunu ve kullanım şeklini öğreneceksiniz. Verilerin saklanması ve işlenmesi için gerekli olan veri tabanına nasıl bağlanabileceğinizi göreceksiniz.
Bağlanılan veri tabanına verilerin ekleme, silme ve değiştirme işlemlerinin nasıl yapılabileceğini öğreneceksiniz. Böylece web sitenizde bulunan verileri kontrol edebilecek ve isteğinize göre düzenleyebileceksiniz. Tüm bu konular ile Laravel için gerekli kurulumları ve klasör yapısını öğrenerek basit düzey web siteleri hazırlamaya başlayabileceksiniz.
Ankara Üniversitesi İletişim Fakültesi Radyo, Televizyon ve Sinema bölümünden mezun oldum. Eğitimime devam ederken, bir televizyon kanalında canlı yayın kameramanı olarak görev yaptım. Çeşitli kısa film projelerinde farklı görevlerde bulundum. Enstitü’den aldığım online içerik editörlüğü eğitiminden sonra yazarlık yapmaya başladım.