21 Ekim 2009 Çarşamba

Php sen bu mektubu okurken ben django'nun koynunda olacağım...

Frameworkleri bilirsiniz eğer bilmeyenler varsa açıklayayım. Frameworkler genel deyimle 'amerikayı yeniden keşfetmenin gereksiz olduğundan' ortaya çıkmıştır. Herkes web projelerinde sql sorgulamaları yapıyor, kullanıcı işlemlerini kullanıyor, bir template sınıfı oluşturuyor vesayre. Ancak bunları ben de tek tek satır satır elimle yazmak istemiyorum (tabii keyfe gelmediysem). Bunun için sağlam bir framework kullanma gereği hissetim ve bir arayışa girdim.

Uzun bir süredir php'den uzaklaşmanın gerekli olduğunu düşünüyordum ve bunun için bir kaç dile bulaştım(azıcık taddım). Önce JavaEE ilgimi çekti sağlam bir dil ve aynı zamanda JavaEE süper bir API(doğru mu oldu?) gibi gözüktü ancak javaEE web programlama için fazlasıyla ağır(yetenekli) geldi. Basit şeyler için bile bolca uğraşman gerekiyordu. Rails'a bakayım dedim ancak ruby'nin syntaxına çok yabancıydım. Böyle dillere bakarken birden dedim ki kendi kendime "programlama için python ile epey haşır neşirim ve çok seviyorum neden web için de python kullanmayayım ki?". Bunun üzerine python ile web programlamaya asıldım.

Daha önce de hafif kokladığım django'yu bu sefer ciddi ciddi ele almaya çalıştım ve sonuç harika. Diğer python web frameworkleri de inceledim ancak django kadar oturmuşu yok. Herşey elinizin altında zaten var. Tam anlamıyla herşey diyebilirim. Phpde de frameworkleri denedim ancak hiçbiri django kadar yetenekli ve basit değil (Zend'den haberdarım ancak basitlik ve sadelik anlamında o da kaybediyor). Peki django'nun avantajları neler?
  • Üyelik sistemi (gruplar, izinler, login v.s) ile çok kolay ve birkaç satırlık kod sayesinde bir çok şeyi sağlıyorsunuz.
  • Obje İlişki Haritası (Object Relation Mapping) özelliği çok ama çok iyi çalışıyor. İlişkilendirmeler çok çok iyi olmuş
  • Formlar oluşturmakla uğraşmıyorsunuz django oluşturduğunuz veri modellerine göre size form oluşturuyor.
  • Kendinden gelen bir template dili var ve herşey düşünülmüş. Aynı zamanda çok da basit.
  • Hızlıca öğrenilebilen bir framework. gerçekten çok hızlı ilerliyorsunuz.
  • Dökümantasyonu tek kelimeyle mükemmel. En basit bilgilerden en detaylı olaylara kadar herşeyin açıklaması hatta örneklendirmeleri bile mevcut
Şimdilik django'da bilmediğim birçok şey var ancak yeni bir bilgiye ihtiyaç duyduğumda sadece 5 dk ayırmam yetiyor. Dökümantasyonu çok düzenli hazırlanmış. Eğer python ile biraz haşır neşir olduysanız ve web geliştirmek için siz de bir framework arayışındaysanız kesinlikle djangoyu bir deneyin derim. Emin olun vazgeçemeyeceksiniz.

Not: Drupal'a olan hayranlığım hiç bitmeyecektir :)

Hiç yorum yok: