Laravel,MVC yapısında web uygulamaları geliştirme için tasarlanmış ücretsiz, açık kaynak PHP web uygulama iskeletidir. Laravel, GitHub sitesinde barındırılan kaynak kodu ile birlikte, MIT lisansı altında yayınlandı.
Orijinal yazar(lar) | Taylor Otwell |
---|---|
Geliştirici(ler) | The Laravel Team |
İlk yayınlanma | Haziran 2011 | )
Güncel sürüm | 10.x / 14 Şubat 2023 | )
Programlama dili | PHP |
İşletim sistemi | Cross-platform |
Tür | Web Uygulama İskeleti |
Lisans | MIT Lisansı |
Resmî sitesi | http://www.laravel.com |
Kod deposu |
|
Tarihçe
Taylor Otwell, Laravel'i kullanıcı kimlik doğrulaması (authentication) ve yetkilendirme (authorization) için yerleşik destek gibi belirli özellikleri sağlamayan CodeIgniter framework'üne daha gelişmiş bir alternatif sağlama girişimi olarak geliştirdi. Laravel'in ilk beta sürümü 9 Haziran 2011'de kullanıma sunuldu, ardından aynı ay içinde Laravel 1 sürümü yayınlandı.
2014 ve 2015 yıllarında Sitepoint 30 Mayıs 2014 tarihinde Wayback Machine sitesinde . tarafından yapılan en popüler PHP uygulama iskeletleri anketlerinde Laravel iki sene üst üste en üst sırada yer aldı. Nisan 2015 tarihindeki verilere göre Laravel github'da barındırılan PHP projeleri arasında en çok takip edilen ve en popüler projedir.
Laravel, versiyon 4'ten itibaren bağımlılık yönetimi (dependency management) için composer paket yöneticisini tercih etmiştir. Yine versiyon 4'ten itibaren Doctrine, Monolog gibi paketlerin yanı sıra web iskeletini oluşturan komponentler için Symfony2 paketlerinden yararlanmaktadır.
Versiyon 5 ile birlikte dizin yapısında önemli bir değişikliğe gidilmiş ve PSR-4 standartlarına daha uyumlu bir yapı haline getirilmiştir.
Versiyon 7 3 Mart 2020'de yayınlanmıştır. Laravel 7 ile birlikte yeni bir özellik olan Laravel Airlock ekosisteme eklenmiş ve rota hızı (routing speed) geliştirmeleri ile özel Eloquent ORM sınıflarını içeren birçok yenilik kullanıcılara sunulmuştur.
Laravel 8, 8 Eylül 2020'de Laravel Jetstream, model factory sınıfları, migration squashing, pagination tasarımı için Tailwind CSS ve diğer kullanılabilirlik iyileştirmeleri gibi yeni özelliklerle piyasaya sürüldü.
En son Laravel sürümü, 8 Şubat 2022'de piyasaya sürülen Laravel 9'dur. Route için controller metodu, anonymous migration, yeni str fonksiyonları gibi birçok yeniliklerle birlikte yayınlanmıştır.
Özellikler
Laravel' in en önemli tasarım noktaları aşağıda listelenmiştir:
- Composer sayesinde hem iskelet bağımsız hem de laravel'e özgü yazılmış paketlerin kullanımına imkân verir.
- Eloquent ORM kullanımı basit ve kullanışlı bir mimari deseni uygulamasıdır. Veritabanındaki her bir tabloya karşılık gelen bir model sınıfı bulunur. Bu sınıf kullanılarak oluşturulan nesneler ile akıcı arabirim (fluent interface) kullanılarak sorgular oluşturulabilir.
- Yüksek kabiliyetli rota (route) tanımları ile bağlantılar programatik olarak oluşturulur. Rotalara isim vermek ya da rotaya cevap veren controller ve action tanımları ile programatik olarak URL oluşturmak mümkündür. Böylece SEO ya da diğer ihtiyaçlar nedeniyle gereken URL değişikliklerinin projenin genelinde kullanılan linklerde otomatik olarak görülmesini mümkün kılar.
- Güçlü blade şablon dili ile MVC mimari deseninin View (V) kısmına çözüm sağlanır. View için blade kullanmak mecburi değildir, öntanımlı olarak PHP dilinin kendisi de bir şablon dili olarak tercih edilebilir.
- İçerisinde kimlik doğrulama (authentication) ile ilgili hazır yapı bulunmaktadır. Yapı aktif hale getirildiği zaman yetkilendirmenin yanı sıra e-posta onaylama, "şifremi unuttum" özelliği gibi ihtiyaçlar için başlangıç dosyaları otomatik oluşturulur.
- XSRF güvenlik açığı için hazır çözümü bulunmaktadır.
- Migration ve data seeder özellikleri ile veritabanı şeması versiyonlaması ve otomatik veri girişi imkânı sağlamaktadır.
- Yüksek (I/O) gerektiren ya da uzun süren işler için queue kütüphanesine sahiptir.
- Arka planda ya da komut satırı üzerinden çalışması gereken programlar için altyapı sağlamaktadır.
- Çoklu dil desteği bulunmaktadır.
- Popüler kütüphanesi üzerine kurulu e-posta gönderim kütüphanesi mevcuttur.
- Birim testleri (unit testing) ve fonksiyonel testler (functional testing) için gerekli altyapı iskelete entegre edilmiş durumdadır.
- Otomatik sayfalama desteği ile dizi ya da veritabanı sonuçları kolayca sayfalandırılabilir.
Örnek Laravel kodu
<?php use Illuminate\Support\Facades\{Route, Mail}; use App\Models\User; Route::get("/users/{user}", function(User $user) { return $user; }); Route::post("/users", function(App\Http\Requests\CreateUserRequest $request) { $user = User::create($request->validated()); Mail::to($user->email)->send(new App\Mail\WelcomeMessage); return $user; });
Kaynakça
- ^ "Arşivlenmiş kopya". 25 Nisan 2014 tarihinde kaynağından arşivlendi. Erişim tarihi: 29 Mayıs 2014.
- ^ "Arşivlenmiş kopya". 6 Haziran 2014 tarihinde kaynağından . Erişim tarihi: 30 Mayıs 2014.
- ^ "Arşivlenmiş kopya". 2 Nisan 2015 tarihinde kaynağından . Erişim tarihi: 2 Nisan 2015.
- ^ Github PHP Dili için en popüler projeler 15 Aralık 2019 tarihinde Wayback Machine sitesinde . - En son Nisan 2015'te kontrol edilmiştir.
- ^ . 2 Nisan 2015 tarihinde kaynağından arşivlendi. Erişim tarihi: 2 Nisan 2015.
- ^ . 8 Eylül 2013 tarihinde kaynağından arşivlendi. Erişim tarihi: 2 Nisan 2015.
- ^ "Larave 5 Changelog". 2 Nisan 2015 tarihinde kaynağından . Erişim tarihi: 2 Nisan 2015.
- ^ "Arşivlenmiş kopya". 10 Mart 2020 tarihinde kaynağından . Erişim tarihi: 9 Mart 2020.
- ^ a b "Laravel - The PHP Framework For Web Artisans". laravel.com (İngilizce). 7 Şubat 2021 tarihinde kaynağından . Erişim tarihi: 26 Mart 2022.
Dış bağlantılar
- Laravel - Resmi web sitesi 23 Ocak 2021 tarihinde Wayback Machine sitesinde .
- Laravel Eğitim Videoları 24 Şubat 2016 tarihinde Wayback Machine sitesinde .
wikipedia, wiki, viki, vikipedia, oku, kitap, kütüphane, kütübhane, ara, ara bul, bul, herşey, ne arasanız burada,hikayeler, makale, kitaplar, öğren, wiki, bilgi, tarih, yukle, izle, telefon için, turk, türk, türkçe, turkce, nasıl yapılır, ne demek, nasıl, yapmak, yapılır, indir, ücretsiz, ücretsiz indir, bedava, bedava indir, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, resim, müzik, şarkı, film, film, oyun, oyunlar, mobil, cep telefonu, telefon, android, ios, apple, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, pc, web, computer, bilgisayar
Laravel MVC yapisinda web uygulamalari gelistirme icin tasarlanmis ucretsiz acik kaynak PHP web uygulama iskeletidir Laravel GitHub sitesinde barindirilan kaynak kodu ile birlikte MIT lisansi altinda yayinlandi LaravelOrijinal yazar lar Taylor OtwellGelistirici ler The Laravel TeamIlk yayinlanmaHaziran 2011 13 yil once 2011 06 Guncel surum10 x 14 Subat 2023 17 ay once 2023 02 14 Programlama diliPHPIsletim sistemiCross platformTurWeb Uygulama IskeletiLisansMIT LisansiResmi sitesihttp www laravel comKod deposugithub com laravel laravelTarihceTaylor Otwell Laravel i kullanici kimlik dogrulamasi authentication ve yetkilendirme authorization icin yerlesik destek gibi belirli ozellikleri saglamayan CodeIgniter framework une daha gelismis bir alternatif saglama girisimi olarak gelistirdi Laravel in ilk beta surumu 9 Haziran 2011 de kullanima sunuldu ardindan ayni ay icinde Laravel 1 surumu yayinlandi 2014 ve 2015 yillarinda Sitepoint 30 Mayis 2014 tarihinde Wayback Machine sitesinde tarafindan yapilan en populer PHP uygulama iskeletleri anketlerinde Laravel iki sene ust uste en ust sirada yer aldi Nisan 2015 tarihindeki verilere gore Laravel github da barindirilan PHP projeleri arasinda en cok takip edilen ve en populer projedir Laravel versiyon 4 ten itibaren bagimlilik yonetimi dependency management icin composer paket yoneticisini tercih etmistir Yine versiyon 4 ten itibaren Doctrine Monolog gibi paketlerin yani sira web iskeletini olusturan komponentler icin Symfony2 paketlerinden yararlanmaktadir Versiyon 5 ile birlikte dizin yapisinda onemli bir degisiklige gidilmis ve PSR 4 standartlarina daha uyumlu bir yapi haline getirilmistir Versiyon 7 3 Mart 2020 de yayinlanmistir Laravel 7 ile birlikte yeni bir ozellik olan Laravel Airlock ekosisteme eklenmis ve rota hizi routing speed gelistirmeleri ile ozel Eloquent ORM siniflarini iceren bircok yenilik kullanicilara sunulmustur Laravel 8 8 Eylul 2020 de Laravel Jetstream model factory siniflari migration squashing pagination tasarimi icin Tailwind CSS ve diger kullanilabilirlik iyilestirmeleri gibi yeni ozelliklerle piyasaya suruldu En son Laravel surumu 8 Subat 2022 de piyasaya surulen Laravel 9 dur Route icin controller metodu anonymous migration yeni str fonksiyonlari gibi bircok yeniliklerle birlikte yayinlanmistir OzelliklerLaravel in en onemli tasarim noktalari asagida listelenmistir Composer sayesinde hem iskelet bagimsiz hem de laravel e ozgu yazilmis paketlerin kullanimina imkan verir Eloquent ORM kullanimi basit ve kullanisli bir mimari deseni uygulamasidir Veritabanindaki her bir tabloya karsilik gelen bir model sinifi bulunur Bu sinif kullanilarak olusturulan nesneler ile akici arabirim fluent interface kullanilarak sorgular olusturulabilir Yuksek kabiliyetli rota route tanimlari ile baglantilar programatik olarak olusturulur Rotalara isim vermek ya da rotaya cevap veren controller ve action tanimlari ile programatik olarak URL olusturmak mumkundur Boylece SEO ya da diger ihtiyaclar nedeniyle gereken URL degisikliklerinin projenin genelinde kullanilan linklerde otomatik olarak gorulmesini mumkun kilar Guclu blade sablon dili ile MVC mimari deseninin View V kismina cozum saglanir View icin blade kullanmak mecburi degildir ontanimli olarak PHP dilinin kendisi de bir sablon dili olarak tercih edilebilir Icerisinde kimlik dogrulama authentication ile ilgili hazir yapi bulunmaktadir Yapi aktif hale getirildigi zaman yetkilendirmenin yani sira e posta onaylama sifremi unuttum ozelligi gibi ihtiyaclar icin baslangic dosyalari otomatik olusturulur XSRF guvenlik acigi icin hazir cozumu bulunmaktadir Migration ve data seeder ozellikleri ile veritabani semasi versiyonlamasi ve otomatik veri girisi imkani saglamaktadir Yuksek I O gerektiren ya da uzun suren isler icin queue kutuphanesine sahiptir Arka planda ya da komut satiri uzerinden calismasi gereken programlar icin altyapi saglamaktadir Coklu dil destegi bulunmaktadir Populer kutuphanesi uzerine kurulu e posta gonderim kutuphanesi mevcuttur Birim testleri unit testing ve fonksiyonel testler functional testing icin gerekli altyapi iskelete entegre edilmis durumdadir Otomatik sayfalama destegi ile dizi ya da veritabani sonuclari kolayca sayfalandirilabilir Ornek Laravel kodu lt php use Illuminate Support Facades Route Mail use App Models User Route get users user function User user return user Route post users function App Http Requests CreateUserRequest request user User create request gt validated Mail to user gt email gt send new App Mail WelcomeMessage return user Kaynakca Arsivlenmis kopya 25 Nisan 2014 tarihinde kaynagindan arsivlendi Erisim tarihi 29 Mayis 2014 Arsivlenmis kopya 6 Haziran 2014 tarihinde kaynagindan Erisim tarihi 30 Mayis 2014 Arsivlenmis kopya 2 Nisan 2015 tarihinde kaynagindan Erisim tarihi 2 Nisan 2015 Github PHP Dili icin en populer projeler 15 Aralik 2019 tarihinde Wayback Machine sitesinde En son Nisan 2015 te kontrol edilmistir 2 Nisan 2015 tarihinde kaynagindan arsivlendi Erisim tarihi 2 Nisan 2015 8 Eylul 2013 tarihinde kaynagindan arsivlendi Erisim tarihi 2 Nisan 2015 Larave 5 Changelog 2 Nisan 2015 tarihinde kaynagindan Erisim tarihi 2 Nisan 2015 Arsivlenmis kopya 10 Mart 2020 tarihinde kaynagindan Erisim tarihi 9 Mart 2020 a b Laravel The PHP Framework For Web Artisans laravel com Ingilizce 7 Subat 2021 tarihinde kaynagindan Erisim tarihi 26 Mart 2022 Dis baglantilarLaravel Resmi web sitesi 23 Ocak 2021 tarihinde Wayback Machine sitesinde Laravel Egitim Videolari 24 Subat 2016 tarihinde Wayback Machine sitesinde