İçeriğe atla

Laravel

Laravel
Orijinal yazar(lar)Taylor Otwell
Geliştirici(ler)The Laravel Team
İlk yayınlanmaHaziran 2011 (13 yıl önce) (2011-06)
Güncel sürüm10.x / 14 Şubat 2023 (20 ay önce) (2023-02-14)
Programlama diliPHP
İşletim sistemiCross-platform
TürWeb Uygulama İskeleti
LisansMIT Lisansı
Resmî sitesihttp://www.laravel.com
Kod deposu Bunu Vikiveri'de düzenleyin

Laravel,[1] 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ı.

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 arşivlendi. tarafından yapılan en popüler PHP uygulama iskeletleri anketlerinde Laravel iki sene üst üste en üst sırada yer aldı.[2][3] 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.[4]

Laravel, versiyon 4'ten itibaren bağımlılık yönetimi (dependency management) için composer paket yöneticisini tercih etmiştir.[5] Yine versiyon 4'ten itibaren Doctrine, Monolog gibi paketlerin yanı sıra web iskeletini oluşturan komponentler için Symfony2 paketlerinden yararlanmaktadır.[6]

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.[7]

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.[8]

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ü.[9]

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.[9]

Ö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 ActiveRecord 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 SwiftMailer 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

  1. ^ "Arşivlenmiş kopya". 25 Nisan 2014 tarihinde kaynağından arşivlendi. Erişim tarihi: 29 Mayıs 2014. 
  2. ^ "Arşivlenmiş kopya". 6 Haziran 2014 tarihinde kaynağından arşivlendi. Erişim tarihi: 30 Mayıs 2014. 
  3. ^ "Arşivlenmiş kopya". 2 Nisan 2015 tarihinde kaynağından arşivlendi. Erişim tarihi: 2 Nisan 2015. 
  4. ^ Github PHP Dili için en popüler projeler 15 Aralık 2019 tarihinde Wayback Machine sitesinde arşivlendi. - En son Nisan 2015'te kontrol edilmiştir.
  5. ^ "Laravel 4 Changelog - Changes from Laravel 3". 2 Nisan 2015 tarihinde kaynağından arşivlendi. Erişim tarihi: 2 Nisan 2015. 
  6. ^ "Laravel 4 Wiki". 8 Eylül 2013 tarihinde kaynağından arşivlendi. Erişim tarihi: 2 Nisan 2015. 
  7. ^ "Larave 5 Changelog". 2 Nisan 2015 tarihinde kaynağından arşivlendi. Erişim tarihi: 2 Nisan 2015. 
  8. ^ "Arşivlenmiş kopya". 10 Mart 2020 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Mart 2020. 
  9. ^ a b "Laravel - The PHP Framework For Web Artisans". laravel.com (İngilizce). 7 Şubat 2021 tarihinde kaynağından arşivlendi. Erişim tarihi: 26 Mart 2022. 

Dış bağlantılar

İlgili Araştırma Makaleleri

<span class="mw-page-title-main">PHP</span> bir programlama dili

PHP: Hypertext Preprocessor, internet için üretilmiş, sunucu taraflı, çok geniş kullanımlı, genel amaçlı, içerisine HTML gömülebilen betik ve programlama dilidir. İlk kez 1995 yılında Rasmus Lerdorf tarafından yaratılan PHP'nin geliştirilmesi bugün PHP topluluğu tarafından sürdürülmektedir. Ocak 2013 itibarıyla 244 milyondan fazla web sitesi PHP ile çalışırken 2.1 milyon web sunucusunda PHP kurulumu bulunmaktadır.

<span class="mw-page-title-main">İnternet sitesi</span> tek bir web alanından sunulan ilgili web sayfaları kümesi

Web sitesi, Ortak bir alan adı ile tanımlanan ve en az bir web sunucusunda yayınlanan web sayfaları ve ilgili içeriklerden oluşan bir koleksiyondur. Web üzerindeki sayfalar; metin, görsel ve animasyon şeklinde ziyaretçisine bilgi aktaran veya hizmet sunan sayfaların tümünü kapsayan bir doküman topluluğudur. Ziyaretçiler bir web sitesine, HTTP veya HTTPS protokollerinde aşağıdaki bileşenlerden oluşan benzersiz bir adresi kullanarak erişirler:

AJAX, İnternet sayfalarında JavaScript ve XMLHttpRequest kullanımı ile etkileşimli uygulamalar yaratan tekniğin adıdır.

ASP.NET MVC Framework "Community Technology Preview", 10 Aralık 2007 tarihinde, Microsoft'un ASP.NET için geliştirdiği Model-view-controller iskeletidir. Bu iskelet ile ASP.NET uygulamaları, Model, View ve Controller rollerine bölünerek geliştiriliyor.Model (Tanım) uygulamanın üzerinde duracağı meseleyi temsil ediyor. Genel olarak bu bir veritabanıdır. Controller, Model üzerindeki operasyonları tarif eden roldür. View ise, gerekli bilginin görünümünden sorumludur. ASP.NET MVC Framework, "interface"ler aracılığıyla bu üç rolü de destekliyor. Resmi olarak geliştirilen View kısmı sadece Web Formlarını destekliyor. Ama bağımsız olarak başka görünüm motorları uyarlanabilir. Sayfalar etkileşimde PostBack değil, URL Routing mekanizmasını kullanıyor. Böylelikle fiziksel dosya hiyerarşisiyle ilişkisiz, REST uyumlu URL'ler tanımlanabiliyor. ASP.NET MVC Framework bu URL'lerin ilgili Controller metotlarına eşlenmesi ve bu URL'lerin üretimi için hazır bir altyapı sunuyor.

Microsoft Visual Studio, Microsoft tarafından geliştirilen bir tümleşik geliştirme ortamıdır (IDE). Microsoft Windows, Windows Mobile, Windows CE, .NET Framework, .NET Compact Framework ve Microsoft Silverlight tarafından desteklenen tüm platformlar için yönetilen kod ile birlikte yerel kod ve Windows Forms uygulamaları, web siteleri, web uygulamaları ve web servisleri ile birlikte konsol ve grafiksel kullanıcı arayüzü uygulamaları geliştirmek için kullanılır.

UUCP, Unix-to-Unix Copy 'nın kısaltmasıdır. Bu kavram, genellikle uzaktan komut çalıştırmaya ve bilgisayarlar arasında dosya, e-posta ve ağ haberleri taşınmasına imkân sağlayan bilgisayar programı ve protokoller paketi olarak adlandırılır.

CodeIgniter, PHP ile dinamik uygulamalar geliştirmek için geliştirilmiş bir web uygulama iskeletidir. "Geliştiricilerin çok daha hızlı proje geliştirmeleri hedef edilmiştir. En sık ihtiyaç duyacağınız kütüphaneleri kullanarak zaman kazanabilirsiniz." İlk sürüm 28 Şubat 2006 tarihinde yayınlandı. MVC mimari deseni temeline göre geliştirilmiş olup günümüzde hızla yaygınlaşmaktadır.

<span class="mw-page-title-main">Yazılım iskeleti</span>

Bilgisayar programlamada yazılım iskeleti, yazılım çerçevesi ya da yazılım çatısı, standart fonksiyonların hazır olarak sunulduğu ancak programcı tarafından bu fonksiyonlardan arzu edilen kısımların ek kodlarla istenildiği şekilde güncellenebildiği sistemlerdir.

<span class="mw-page-title-main">Phalcon</span> Bir PHP Çatısı

Phalcon, MVC mimari deseni üzerine kurulmuş yüksek performanslı bir PHP Çatısıdır. İlk sürümü 2012 yılında BSD lisansı ile yayınlanan Phalcon, açık kaynak kodlu olarak geliştiricilerin kullanımına sunulmuştur. Piyasadaki birçok PHP iskeletlerinin aksine C ile PHP'ye eklenti olarak yazılmıştır. Bu nedenle alternatiflerine oranla çok daha performanslı çalışabilmektedir.

<span class="mw-page-title-main">Composer</span>

Composer, PHP programlama dili için tasarlanmış çoklu platform (cross-platform) bir paket yönetim sistemidir. PHP uygulamaları ve uygulama içerisinde kullanılan kütüphaneler için bağımlılık yönetimi sağlar. Nils Adermann and Jordi Boggiano, tarafından geliştirilmiş olup ilk sürümü 1 Mart 2012 tarihinde yapılmıştır. Composer geliştirilirken Node.js'in "npm" ve Ruby'nin "bundler" sistemlerinden esinlenilmiştir.

<span class="mw-page-title-main">React</span> Kullacı arayüzleri oluşturmak için kullanılan JavaScript kütüphanesi

React, kullanıcı arayüzü oluşturmaya yarayan açık kaynak kodlu bir javascript kütüphanesidir. Facebook önderliğinde bir geliştirici grubu tarafından geliştirilmekte olan React, Model-View-Controller prensibine uygun olarak oluşturulmuştur. React ile single-page olarak adlandırılan sayfalar geliştirilebileceği gibi React-Native ile mobil uygulamalar da geliştirilebilir.

Play bir açık kaynak web uygulama iskeletidir. Guillaume Bort tarafından oluşturulmuştur. Java ve Scala programlama dili ile yazılmıştır, MVC (model-view-controller) kalıbı ile geliştirilir. Play uygulamaları Java veya Scala dillerinden birisi ile geliştirilebilir.

iPhone OS 2 2008 mobil işletim sistemi

iPhone OS 2, iPhone OS'un (iOS) ikinci sürümüdür. İlk kez 11 Temmuz 2008 yılında tanıtılmıştır. Bu sürüm App Store üzerinden üçüncü parti uygulamaları desteklemek için yaratıldı. iPhone OS 2.2.1 iPhone OS 2'nin son versiyonu oldu. 1.x tabanında çalışan cihazlar bu sürüme yükseltilebilir. iPhone OS 2-nin en farklı özelliği App Store oldu. Sürüm iPhone, iPod Touch ve yeni iPhone 3G modelinde bulundu. Bu özellik tanıtılmadan önce, cihaz üzerinde özel uygulamalar yüklemek için tek yol Apple kesinlikle tavsiye etmediği ve desteklenmeyen jailbreaking aracılığıyla idi. Sonuç olarak App Store'da yüklenebilir uygulamaların miktarı o zamandan beri önemli ölçüde büyüdü. 2011 yılında Apple tarafından sürümün desteklenmesine son verildi.

<span class="mw-page-title-main">OS X Mavericks</span>

OS X Mavericks veya OS X 10.9 Mavericks OS X işletim sisteminin 10.büyük sürümü olup, Macintosh bilgisayarlar için Apple Inc.in masaüstü ve sunucu işletim sistemidir. 13A603 (GM2) yazılımda yapılmıştır. Bu sürümün temelini Darwin işletim sistemi oluşturur. Sürümün Unamesi "Darwin 13.0"dir.OS X Mavericks WWDC 2013'te, 10 Haziran 2013 tarihinde ilan edildi ve dünya çapında Mac App Store üzerinden ücretsiz yükseltme olarak, 22 Ekim 2013 tarihinde serbest bırakıldı.

<span class="mw-page-title-main">OS X Mountain Lion</span> işletim sistemi

OS X Mountain Lion veya OS X 10.8 Mountain Lion OS X işletim sisteminin 9.büyük sürümü olup, Macintosh bilgisayarlar için Apple Inc.in masaüstü ve sunucu işletim sistemidir. Sürümün takma ismi "dağ aslanı"dır. 12A269 (GM) yazılımda yapılmıştır.Bu sürümün temelini Darwin işletim sistemi oluşturur.Sürümün Unamesi "Darwin 12.0"dir.Geliştiricilere göre, yeni versiyon Mac OS X Lion ile karşılaştırıldığında 200'ün üzerinde yeni özellik içerir.OS X Mountain Lion, 25 Temmuz 2012 tarihinde satın almak için yayımlandı ve Apple'ın Mac App Store üzerinden indirmek için serbest bırakıldı. Şu ana kadar tanıtılmış olan OS X sürümleri Apple Software Update aracılığı ile sunuldu, Mountain Lion bu bakımdan Mac App Store üzerinden indirilen ilk sürüm oldu. İşletim sistemi, Apple'ın Online Game Center ve iCloud servisleri ile entegrasyon ve yeni malware engelleme sistemi Gatekeeper sistemini kazandı, Safari web tarayıcısı ise sürüm 6-ya güncellendi.Mountain Lion, 10.8.1 sürüm için bir güncelleştirme Ağustos 23, 2012 tarihinde serbest bırakıldı.

<span class="mw-page-title-main">Mac OS X Lion</span> Mac OS X işletim sisteminin 2011 tarihli, 8. büyük sürümü

Mac OS X Lion veya Mac OS X 10.7 Lion Mac OS X işletim sisteminin 8. büyük sürümü olup, Macintosh bilgisayarlar için Apple Inc.in masaüstü ve sunucu işletim sistemidir. 11A511 yazılımda yapılmıştır. Bu sürümün temelini Darwin işletim sistemi oluşturur.Sürümün Unamesi "Darwin 11.0"dir. Sürümün ilk önizlemesi "Maca geri dön" sloganı altında Apple Özel Etkinliğinde (Stevenote) 20 Ekim 2010 tarihinde açıldı. Bu, Apple'ın iOS sisteminde yapılan birçok gelişmeler, Mac yüklü uygulamaların kolayca gezilebilir olan ekran gibi yenilikler getiriyor, Mac OS X Snow Leopard sürümündeki gibi, Mac App Store için destek içerir.Sürümün yüklenmesi Apple Software Update aracılığı ile oluyor. 24 Şubat 2011 tarihinde, Lion-un ilk geliştiriciler için önizlemesi (11A390) Apple Developer programına abonelerine serbest bırakıldı. Diğer geliştirici önizlemesi sonra dan WWDC 2011'de serbest bırakıldı. Lion, 1 Temmuz 2011 tarihinde üretim için serbest bırakıldı, 20 Temmuz 2011 tarihinde Mac App Store üzerinden son sürümü ile izledi. İlk günde şirket bir milyon satış olduğunu bildirdi. Ekim 2011 itibarıyla, Mac OS X Lion, dünya çapında altı milyon kopya sattı.

<span class="mw-page-title-main">MacOS Server</span>

macOS Server, Apple tarafından üretilen ve ayrı piyasaya çıkarılan add-on bir işletim ve sunucu sistemidir, macOS işletim sistemi için ek sunucu programları, idaresi ve yönetimi araçları sağlar. Mac OS X Server İngilizce, Japonca, Fransızca, Almanca, Basitleştirilmiş Çince, Hollandaca, İtalyanca, Almanca, İspanyolca ve Geleneksel Çince mevcuttur.

<span class="mw-page-title-main">Outlook Web</span> Microsoftun işlettiği bir kişisel bilgi yöneticisi ağ uygulamasıı

Outlook Web Microsoft'tan bir kişisel bilgi yöneticisi web uygulamasıdır. Office 365, Microsoft Exchange Server ve Exchange Online'da bulunur. Web tabanlı bir e-posta istemcisi, bir takvim aracı, bir kişi yöneticisi ve bir görev yöneticisi içerir. Ayrıca, eklenti entegrasyonu, web üzerinde Skype ve tüm web uygulamalarında bulunan birleştirilmiş temalar yanı sıra uyarılar da içerir. Outlook web, kullanıcının seçebileceği web uygulamalarının listesini getiren Uygulama Başlatıcı simgesini kullanarak gezinir. Mayıs 2016 itibarıyla, Microsoft, Outlook Web ve Office 365 altyapısını kullanmak için, Outlook.com'u güncelledi. Outlook.com'u önizleme dışı bıraktıktan sonra, Ağustos 2016'da tamamladı. Outlook Web, Office 365 aboneliği ile birlikte veya kurum içi Exchange Sunucusu satın alınarak dahil edilir.

<span class="mw-page-title-main">Opera Coast</span>

Opera Coast, Opera Software tarafından iOS cihazlar için geliştirilmiş ücretsiz bir web tarayıcısıydı. Tarayıcı, herhangi bir Opera ürününe dayanmıyordu ve sıfırdan yazıldı. Ayrıca, geleneksel tarayıcı düğmeleri ve sekmeler, geçmiş ve yer işaretleri gibi bileşenler ortadan kaldırıldı. Bunlar mimik tanıma ile değiştirildi.

mail.com

mail.com, Pensilvanya, ABD merkezli, 1&1 Mail & Media Inc.'e ait bir portal ve e-posta sağlayıcısıdır.