Bu frameworkler den hangisini neden tercih ediyorsunuz? Bu iki frameworkün birbirlerine olan üstünlükleri nelerdir?

soruldu: 03 Kas '12, 08:57

Bora's gravatar image

Bora
1594612
cevap kabul oranı: 0%

değiştirildi: 03 Kas '12, 10:25

CemIkta's gravatar image

CemIkta ♦
19.9k29125190


Django (python) ve Ruby on Rails (ruby) web frameworkleri son yillarda cok populer oldu. Ikisi ile de cok degisik buyuklukte ve populer web siteleri, web ve mobil projeleri, icerik yonetim sistemleri (content management systems - cms) yazildi/ yaziliyor.

Internette de Python mu Ruby mi veya Django mu Ruby on Rails mi diye cok tartismalar var. Iki taraf da bircok konuda hakli seceneklere sahip. Sanirim bu biraz da projeyi yazan programcilarin hangi dilde uzman oldugu ve projede kullancagi kutuphane, arac gerec seti (libs/tools) secimlerine bagli.

Python ve Ruby aktif olarak GNU/Linux dunyasinda kullanilmakla beraber Python cok daha onceden kullanildigi icin daha cesitli libs/tools'a sahip. Hemen hemen butun veritabanlari Python'u desteklerken Ruby'de henuz bu tur destekler daha sinirli. Ayrica Python server sistemlerinde aktif olarak script dili olarak da kullaniliyor. Python daha basit, okunakli, sade, öz ifade gucune sahipken benzer ozellikler Ruby'de olmakla birlikte Ruby bazen cok daha komplex syntax'a sahip olabiliyor. Artik bircok universite ilk programlama dili olarak Python'u oneriyor. Kisaca Ruby ve Python benzer ozelliklere, benzer syntax'a, benzer programlama paradigmalarina sahipler. Dil olarak en belirgin ayrim belki de Ruby'nin herseyi OOP (herseyi class olarak tanimlamasi, primitive tipleri olmamasi vb. gibi ozellikleri) yaparken, Python OOP, fonksiyonel veya script olarak calisabilmesi gosterilebilir.

Ruby on Rails ve Django seciminde bu dil ozelliklerini dikkate alirsak, iki framework de stabil, robust, bircok topluluk destegine ve yazilmis bircok guzel proje referansina sahip. Ikisinde de dokumentasyon, tutorials yeteri derecede mevcut. Fakat dikkat edilmesi gerekn en onemli sey ise bence bu iki framework'unde programciyi belirli kurallara uymaya zorlamasi, bazi secimleri dayatmasi. Ornegin Rails'deki controller classlarinizi kolayca, istediginiz gibi degistiremessiniz yada Django'da istediginiz ORM (Object Relational Mapping)' yi kolaca kullanamassiniz. O yuzden bu iki framework yapilari yazacaginiz proje yapisina uygunsa hizli gelistirme(rapid development) saglayabilir, eger uygun degilse vaktinizin buyuk kismi bu iki framework'un yapisini degistirmek icin yazacaginiz ozellestirmelerle / plugin'lerle gececektir.

Ruby dunyasinda Rails'den baska degisik bircok framework mevcut. Python dunyasinda son zamanlarda Pylons / Pyramid framework bircok secimi programciya birakmakla(ORM, Template, MVC, MVVM, validation vb.) önplana cikiyor.

Kendi blogumda Pyramid framework ve SQLAlchemy ORM ile yazdigim demo proje ve tutorials mevcut, ilgilenenler icin yardimi olabilir.

permanent link

cevaplandı: 03 Kas '12, 11:00

CemIkta's gravatar image

CemIkta ♦
19.9k29125190
cevap kabul oranı: 36%

Cevabınız
toggle preview

Bu soruyu takip et

E-Posta üzerinden:

Üyelik girişi yaptıktan sonra abonelik işlemlerini yapabilirsiniz

RSS üzerinden:

Cevaplar

Cevaplar ve Yorumlar

Yazı Formatlama

  • *italic* ya da _italic_
  • **bold** ya da __bold__
  • link:[text](http://url.com/ "başlık")
  • resim?![alt text](/path/img.jpg "başlık")
  • liste: 1. Foo 2. Bar
  • temel HTML etiketleri de kullanılabilir

Bu sorunun etiketleri:

×41
×10
×7
×6

Soruldu: 03 Kas '12, 08:57

Görüntüleme: 2,117 kez

Son güncelleme: 03 Kas '12, 11:00

powered by BitNami OSQA