Hangi Framework' u Kullanmalıyım

Hangi Framework' u Kullanmalıyım

Hangi Framework' u Kullanmalıyım
  • Tarih: 26 Aralık 2018
  • Yorum: 0
  • Kategori:

Framework, kodlarınızı daha düzenli yazmanızı sağlayan standart bir çatıdır. Aslında hiç framework kullanmıyorum diyenler bile, kendilerine has bir kodlama düzenine sahipse bir nevi framework kullanıyordur.

Kodların bakımı, farklı yazılımcıların bir arada çalışabilmesi, kod tekrarından kaçınmak gibi konular zamanla ihtiyaç halini alabilir. İşte bu aşamada daha sistematize edilmiş bir framework kullanmak kaçınılmazdır.

Aslında hangi frameworku kullandığınızın pek bir önemi yok. Önemli olan yazılım yaparken kodların bir düzen içinde olmasıdır. Kendi ihtiyacınıza göre herhangi bir framework seçebilirsiniz.

"Şu frameworkün artık modası geçti" gibi tartışmalara hiç kulak asmayın. Framework sadece bir çatı oluşturur. Geri kalanı sizin kodlama beceriniz, algoritma yeteneğinizle ilgili.


Fakat şahsi olarak frameworklarda bazı kriterleri göz önünde bulundururum. Bunlardan en önemlisi geriye dönük uyumluluk, stabil çalışma, performans...

Örneğin x frameworkunu seçtiniz. Herkesin övdüğü bir framework. Bunun üzerine kendi kütüphanelerinizi yazdınız, kendi cms sisteminizi kurdunuz. Bir süre sonra framework' e bir güncelleme geldi ve eski versiyonda yazılan kodlar çalışmıyor. Daha önce yaptığınız onlarca siteyi yeni versiyona uyarlamak tam bir işkence olacaktır.

Diğer bir önemli husus, farklı ortamlarda çalışabilmesi. Örneğin Phalcon, Django, Express frameworklarından birini kullanıyorsunuz. Bu frameworklarda sunucu erişiminizin olması, sunucuya özel ayarlamalar yapmanız gerekir.

Bu saydığım sebeplerden dolayı bir çok firma codeigniter tercih ediyor. Versiyonlar arası sert geçişler yok, oldukça stabil, performans olarak gayet iyi, hemen hemen her sunucuda çalışabilir. Ancak modern php çerçevelerinde olan bir çok özellik yok. Bu yüzden trendini kaybetmek üzere. Codeigniter' ın versiyon 4 ile birlikte tekrar eski popülerliğini yakalayacağı ön görülüyor.

Laravel' de gelen bir çok kütüphane Third Party olarak eklenebiliyor. Üstelik oldukça esnek ve hızlı. Kendi sisteminize göre düzenleyip kullanabiliyorsunuz.

Laravel de yine aynı şekilde tercih edilebilir ve son zamanlarda oldukça popüler. Yazılımcıların genel şikayeti ise versiyonlar arası uyumsuzluk, çok fazla bağımlılığının olması ve hantal olması. Benim laravelde tecrübe ettiğim şey, bir çok hazır kütüphaneyle işinizi kolaylaştırsa da, onlarca kütüphaneyle birlikte geldiği için ister istemez sunucu yükü fazla oluyor.

Codeigniter bu açıdan gayet hafif ve hızlı bir framework. 

Yii de yine aynı şekilde tercih edilebilir başarılı bir framework. Özellikle performans optimizasyonu ve javascript desteğinin olması artı bir özellik. Oldukça stabil çalışan, olgun bir framework.

Phalcon' dan ise yine mükemmel bir framework. Framework' ün çekirdeği C dilinde yazıldığı için kalabalık bir dosya yığını görmüyorsunuz. Sadece projeye odaklanıyorsunuz.  Laravel 50 MB yer kaplarken Phalcon sadece 4 Kb yer kaplıyor. Framework' ü C dilinde yazarak php' ye yeni bir bakış açısı kazandırmışlar. Ancak Phalcon hakkında bazı tereddütlerim var. Birincisi geniş bir topluluğu yok. İkincisi arkasında güçlü bir şirket yok. Hatta Phalcon forumlarında okuduğum kadarıyla yazılımcılar başka şirketlerde çalışan kimseler. Bu yüzden frameworkü geliştirmeye fırsat bulamıyorlar ve finansman desteği arıyorlardı. Bir de bilmeniz gereken, sunucuya root erişiminizin olması ve phalcon eklentisini sunucuya kurmanız gerektiği. Paylaşımlı hosting kullanan müşterileriniz varsa, sunucu yöneticisiyle irtibata geçerek Phalcon eklentisinin kurulmasını istemeniz gerekli. Bu tür durumları göz önünde bulundurmalısınız. Tabi profesyonel işler yapıyorsanız nihayetinde bir sunucunuz olmak zorunda.

Symphony, Zend, CakePHP ve daha bir çok php framework türü mevcut.  Eğer Php diline yeterince hakimseniz ve döküman okuma beceriniz varsa bir frameworkü öğrenmek çok fazla vaktinizi almaz. Ancak unutmayın ki bir framework e alışınca teknoloji değiştirmek sonra zorlaşıyor. Çünkü mantığınızı ona göre şekillendiriyorsunuz.  Tavsiyem belli başlı olanları bir defa kurup tecrübe etmeniz ve öyle seçmeniz gerektiği. Bizzat kullanmadan kolaylığını ve ihtiyaçlarınıza cevap verip vermediğini tam olarak öğrenemezsiniz.

Yorumlar 0