Yii, yüksek performans ve Web 2.0 uygulamaları için geliştirilmiş bir PHP çatısıdır.
Framework ismini “Yes it is” kelimesinin baş harflerinden almıştır: “Is it fast? … Is it secure? … Is it professional? … Is it right for my next project? … Yes, it is!”
Yii framework geliştiricilere; hızlı, temiz ve tekrarsız (DRY Principle) bir uygulama geliştirme ortamı sağlar. MVC yapısına uygun olarak geliştirilmiş; DAO, Query Builder, Active Record desteğiyle güçlendirilmiş, AJAX destekli widgetlara sahip, ACP ve MemCache ile beraber çalışabilme yeteneğine ve daha birçok özelliğe sahip olan Yii, 2008’den beri geliştirilmekte.
Yii hali hazırda; PostgreSQL, MySQL, SQLite, SQL Server, Oracle, DBLIB ile çalışmaya uygundur ve query caching, null conversion, database cache dependencies, performance profiling, transaction gibi özellikleri desteklemektedir.
2009’da yapılan benchmark testlerine göre (testlerin doğruluğu tartışmalı) Codeigniter, Symfony gibi frameworklere göre daha fazla iş yapabildiğini göstermiştir. Testin kriteri saniyede işlenen istek oranıdır (request per second).
Yii’nin bu başarısının altında “lazy loading” kullanımı yatmaktadır. Bir sınıf ilk kez çağırılana kadar oluşturulmaz, bu da performansı diğer frameworklere nazaran daha iyi yapmaktadır.
Ayrıca çoğu frameworkte yer almayan; model, controller, form ve crud yapı ve işlemlerini otomatik oluşturan (generate) bir aracı (gii tool) mevcut. Bunun sayesinde yalnızca veribanı tasarlayarak ufak bir siteyi ayağa hızlıca kaldırabilmek mümkün.
Yii’nin ilham aldığı bazı framework ve uygulamalar: Prado (event-driven programming), Ruby on Rails (ORM layer), Symfony (Plugin-in archiecture), Joomla (Modular Desing).
Son olarak, Yii’nin temellerinden bahsettiğim bu yazıyı tamamlamadan önce, öğrenme süresince kullanılabilecek kaynaklara da değinmeli.
Resmi siteden 4 videolu anlatım.
Tam döküman: Yii Wiki
Amazon’dan satın alabileceğiniz 2 kitap.
Ve Yii’nin resmi olmayan git reposu.
Türkiye’de Yii kullanan yazılımcı ve şirket sayısı henüz kısıtlı. Bireysel olarak öğrenen ve geliştirenler ise henüz bir araya gelmiş değil. Dolasıyla Yii kullanıyorsanız yorumlarla katkıda bulunmayı ihmal etmeyin.
Codeigniter nedense çok daha yaygın, bilmiyorum hangisi performanslı ama bu yazıdan anlaşılan “Yii”yi de incelemek lazım …
İbrahim; CI daha light bir framework, proje detaylandırılmadığı sürece CI de oldukça iyi bir seçim olacaktır.
Dökümantasyonu biraz gelişirse daha çok yaygınlaşayacağını düşünüyorum. Şu an -en azından bana göre- dökümantasyon konusunda biraz zayıf gibi Yii.
Adil; anlatılan dökümantasyonun rakip ya da benzeri fwlere göre zayıf olduğu doğru fakat wiki kısmı bence gayet yeterli.
Forum da çok aktif, göz atmanı öneririm.
[…] bahsettikten sonra gelelim frameworkün kurulumuna ve Yii ile geliştirilecek ilk […]