Bu türden tüm sorularda olduğu gibi, cevap “duruma bağlıdır”. Dikkate alınması gereken faktörler, dil / çerçeve konusunda ne kadar rahat olduğunuzu ve projenin hangi özellikleri gerektirdiğini içerir. Bunu söyledikten sonra, her biri kendi güçlü ve zayıf yönleri olan bir dizi çerçeve kullanarak siteler oluşturdum:
Grails
Profesyonel bir şey için hızlı bir şekilde bir site almam gerekirse, Grails muhtemelen ilk tercihim olacaktır. GORM denediğim en basit ve en sezgisel ORM, MVC paradigması çok iyi yürütüldü, kodlamaya başlamak için 0 yapılandırma var (URL'ler, DB yamaları, herhangi bir şey), çok hızlı yineleme (sadece yenileme) sayfa), kesintisiz Java entegrasyonu (iş dünyasında iyi bir şey) ve bazı harika eklentiler (örneğin Aranabilir güzellik bir şeydir). En büyük dezavantajı barındırma bulmak (ve pahalı) zor olabilir.
raylar üzerinde yakut
RoR ile yaşadığım deneyim Grails: MVC ile çok benzer. Olumlu tarafı, daha büyük bir topluluğa sahiptir, bu nedenle çevrimiçi kaynaklar (dokümantasyon, SSS, kod örnekleri vb.) Çok bol, TON eklentileri var, Ruby biraz daha esnek / etkileyici / "korkak" ve barındırma bulmak çok daha kolay (özellikle kişisel projeler için); olumsuz tarafta, bağımlılık yönetimi / kurulumu berbat (RubyGems'i Windows, Ubuntu, Fedora ve OSX'te kullandım ve her birinde önemsiz sorunlarla karşılaştım), Grails'ten biraz daha fazla yapılandırma / ek yük var (özellikle, route.rb ve tonlarca db geçiş dosyası ile ilgileniyor) ve görünüşe göre RoR'nin bazı ciddi ölçeklenebilirlik sorunları var.
PHP (CakePHP çerçevesi dahil)
Bir şeyleri hızlı bir şekilde kesmek veya kişisel kullanımlar için bir site oluşturmak gerekirse, muhtemelen PHP ile giderdim. PHP öğrenmek ve dağıtmak için en kolay dildir: uygun LAMP paketlerinden herhangi birini indirin, birkaç kez tıklayın ve hacklemeye başlayın. Topluluk RoR'ninkinden daha büyüktür, bu nedenle dokümantasyon çoktur ve sayısız eklenti vardır (sadece php dosyasına bırakarak ve sayfayı yenileyerek kolayca "yüklenir"). Dili öğrenmek kolaydır, ancak PHP'deki bazı şeyler sadece gariptir ve çirkin kodlardan kaçınmak için çok disiplin gerektirir. CakePHP çerçevesi, işleri düzenli tutmaya yardımcı olmak için güzel bir MVC paradigması uygular ve kişisel olarak biraz daha sezgisel bulmama rağmen, çoğunlukla RoR ile eşittir.
Java (sunucu uygulamaları, JSP'ler, JSTL, payandalar, Hız)
Java sunucu uygulamaları kullanarak birçok site oluşturdum ve dürüstçe, bugünlerde herhangi bir yeni site için onları seçmek için iyi bir neden olmadığını söyleyebilirim. Dik bir öğrenme eğrisi, (XML cehennem) ile savaşmak için tonlarca konfigürasyon, her zaman (JRebel kullanmıyorsanız), her şeyi yeniden konuşlandırma gereği nedeniyle yavaş yineleme, ayrıntılı kod ve işlevsellik açısından "freebies" yoktur. Play ile oynadım ! Framework ve Spring Roo biraz ve her ikisi de az ya da çok "saf" Java koduyla çok güzel şeyler yapıyor ve daha fazla araştırmaya değer.