Piyasada bulunan çoğu framework kendi içinde MVC tasarım desenini barındırır. Ancak bu MVC ile FRAMEWORK'ün ayrılmaz 2 terim olduğu anlamına gelmiyor. Framework kullanmadan da MVC kullanılabilir.
Kolay öğrenilebilmesi, Türkçe kaynağının bol olması, iyi bir performansa sahip olması vb. sebeplerle CodeIgniter, Türkiye'de en fazla kullanılan framework'lerden biri konumunda bulunuyor.
FRAMEWORK KULLANMANIN AVANTAJLARI
- Çoğu framework'ün içinde MVC'yi barındırması sayesinde, MVC'nin sunduğu tüm avantajlardan yararlanılması
- Bir çok yazılımcı tarafından test edilerek güvenlik ve performans optimizasyonlarının yapılmış olması
- Proje süreçlerini kolaylaştırması ve hızlandırması
- Düzenli ve Temiz kod yazımını kolaylaştırması
- Ekip halinde proje geliştirirken karışıklığı önlemesi ve görev paylaşımını kolaylaştırması
- Barındırdıkları database adaptörleri sayesinde farklı Veritabanı türlerine kolay bir şekilde Entegre Edilebilmesi
- İş görüşmelerinde avantaj sağlaması (Php Developer iş ilanlarını incelediğinizde "... Framework'üne hakim" , "En az 1 framework tecrübesi olan" vb. şartları sıkça görür olduk.)
FRAMEWORK KULLANMAYA NASIL KARAR VERMELİYİM?
Yukarıda framework kullanmanın avantajlarından bahsettim. Ama "Her proje de framework kullanın" gibi bir genelleme yapmak yanlış olur. Öncelikle geliştireceğimiz uygulamayı iyi analiz edip, ihtiyaçlarımızı net olarak belirlememiz gerekiyor. 5 sayfadan oluşan basit bir kurumsal site için framework kullanmanın avantajdan çok dezavantaj sunması muhtemeldir. Bu tür küçük projelerde işyükü fazla değildir ve projenin kodlarının devamlı geliştirilmesi gerekmez. O yüzden statik php ile hazırlayarak performans yönünden daha iyi bir sonuç elde edebiliriz.
Orta ve büyük çaplı projeler geliştiriyorsak, ekip halinde çalışmamız gerekiyorsa bence framework kullanmak en iyi çözümlerden biri olacaktır. "İyi de orta ve büyük çaplı projeden kastın nedir?" diye sorabilirsiniz.
Örneğin Video, haber, oyun portalları, arkadaşlık siteleri, blog uygulamaları vb. genelde içinde çok fazla kod barındıran ve ileriye dönük devamlı geliştirilmesi gereken projelerdir. O yüzden işyükü fazla olan ve gelişime açık projelerde framework tercih ederek ileride yaşayabileceğimiz sıkıntıları minumuma indirebilir, projenin hazırlanma sürecini hızlandırabiliriz.HANGİ FRAMEWORK'Ü KULLANMALIYIM?
Bu soru sosyal ağlarda ve forumlarda en çok sorulan sorulardan biri sanırım. Sizlere direk bir isim vererek "Bunu kullanın" diyemem. Ancak Türkiye'de en çok hangi framework'lerin kullanıldığını yazarak ve kendi kullandığım framework'ten bahsederek sizin tercih alanınızı daraltabilirim.
- CodeIgniter
- Zend
- Kohana
- Symfony
- CakePhp
Bu frameworkleri indirip kurarak performans, güvenlik, iş süreci vb. yönlerden incelemenizi ve buna göre karar vermenizi tavsiye edebilirim.
Ben projelerimde CodeIgniter'i kullanıyorum ve şuana kadar birçok projeyi CodeIgniter ile geliştirdim. Performans, güvenlik ve iş süreci yönünden herhangi bir sıkıntı yaşamadım. CodeIgniter'i tercih etmemin sebebi diğer framework'lere göre daha hızlı ve iyi bir dökümantasyona sahip olması diyebilirim. CodeIgniter'i kullanmaya az önce size önerdiğim gibi diğer framework'leri kurup inceleyerek karar verdim.
Kaynak : http://www.webteders.com/blog/detay/...i-Nelerdir./12