我正在考虑将Grails用于新网站,但可以使用其他/新的编程语言和框架。我已经使用J2EE / JSF2,ASP.NET和PHP进行了开发。Grails或Ruby on Rails几乎是使功能快速启动和运行的最佳方法吗?
一些初步的想法:
- DJango看起来与RoR / Grails类似,我会考虑的
- GWT是一个有趣的概念,但是周转时间似乎并不那么快
谢谢-乔恩
我正在考虑将Grails用于新网站,但可以使用其他/新的编程语言和框架。我已经使用J2EE / JSF2,ASP.NET和PHP进行了开发。Grails或Ruby on Rails几乎是使功能快速启动和运行的最佳方法吗?
一些初步的想法:
谢谢-乔恩
Answers:
与所有此类问题一样,答案是“取决于”。需要考虑的因素包括您对语言/框架的适应程度以及项目要求的功能。话虽如此,我已经使用许多框架来构建站点,每个框架都有自己的优点和缺点:
ils子
如果我需要为任何专业人士快速建立网站,Grails可能是我的首选。GORM远远超出了我尝试过的最简单,最直观的ORM,MVC范例执行得很好,有0种配置可以开始编码(无需担心URL,数据库补丁等),迭代非常快(只需刷新即可)页面),无缝的Java集成(在商业世界中是件好事)和一些出色的插件(例如,Searchable是一件美事)。最大的缺点是很难找到托管服务器(而且价格昂贵)。
Ruby on Rails
我在RoR方面的经验与Grails非常相似:MVC执行良好。从积极的方面来看,它具有更大的社区,因此在线资源(文档,常见问题解答,代码示例等)非常丰富,有大量的插件,Ruby则更灵活/更具表现力/“笨拙”,而且更容易找到托管(尤其是针对个人项目);在消极的一面,依赖关系管理/设置吸(我用在Windows,Ubuntu的,Fedora和OSX就跑了RubyGems到每一个不平凡的问题),有轻微更多的配置/开销比Grails的(特别是处理route.rb和大量的db迁移文件),显然,RoR存在一些严重的可伸缩性问题。
PHP(包括CakePHP框架)
如果我需要快速破解某些东西或建立一个供个人使用的网站,那么我可能会选择PHP。PHP是最简单的学习和部署语言:在那里下载任何方便的LAMP软件包,单击几次,然后开始破解。该社区比RoR更大,因此文档很多,并且有无数的插件(只需放入php文件并刷新页面即可轻松“安装”)。该语言简单易学,但是PHP中的某些东西简直是陌生的,要避免使用丑陋的代码,需要花费大量的纪律。CakePHP框架实施了一个很好的MVC范例,以帮助使事情井井有条,并且在大多数情况下与RoR相当,尽管我个人觉得它有点不直观。
Java(servlet,JSP,JSTL,struts,Velocity)
我已经使用Java Servlet技术构建了许多站点,并且可以坦白地说,如今没有足够的理由为任何新站点选择它们。他们的学习曲线陡峭,需要进行大量配置(XML地狱),由于需要一直进行重新部署(除非您使用JRebel),所以迭代速度很慢,冗长的代码,并且在功能方面没有“免费赠品”。我玩过Play游戏!Framework和Spring Roo都有点用处,它们都使用或多或少的“纯” Java代码来做一些很酷的事情,值得进一步研究。
使用CakePHP时,我可以比...一个...快的家伙更快地启动Web应用程序。无论如何,它很快。将文件拖放到您的Web根文件夹中,配置两个文件(每个文件大约需要更改三行)。并开始编码。
因为它偏向于约定而非配置,所以需要一些经验来确保最佳配置,但是我保证,以同等水平的经验,CakePHP在任何框架(可能是期间)中都可以进行最快的部署。
就是说,最初的CakePHP项目是Rails的PHP克隆版本(现在不再存在),因此我确信Rails也可以快速部署。
我已经使用ASP.NET MVC框架已有一段时间了,我发现它是一个相当不错的框架。非常易于使用,尤其是如果您熟悉.NET。自2009年发布以来,该框架一直在迅速发展,MVC 3预览版最近已向公众发布。我认为MS使用ASP.NET MVC框架可以做所有正确的事情。