我的工作团队将开始在一个拥有中等业务逻辑和大量数据库的网站上工作。不久。我们必须选择一种语言和一个框架来构建它,但我们不确定从哪里开始。实际上有很多选择。我们所需要的只是挂钩数据库的东西,允许快速开发和原型设计的东西,以及可以很好地扩展的东西。
今天这个领域的前5名球员是谁?
答案 0 :(得分:6)
五个非常受欢迎的,没有特别的顺序,“每种语言一个”:Rails(Ruby),Django(Python),CakePHP(PHP),ASP.NET(所有.Net语言),Struts 2(Java)。我确信这些语言中还有许多其他框架(当然,还有更多的语言;-),但如果这是你的首要考虑因素,那么它们都具有很高的流行度。
答案 1 :(得分:3)
Rails(Ruby),Cake(PHP),Django(Python)和Grails(Groovy)非常相似,并且具有您提到的功能。虽然他们很重。
我更喜欢更轻量级的框架,这些框架对你来说做得更少,因为许多框架都喜欢用他们的方式做事,如果你想做你的方式,那你就是'我必须与框架搏斗。那么,如果你做的工作比平常多,为什么还要使用框架呢?但每一个他自己。
请在此处查看列表:http://en.wikipedia.org/wiki/Comparison_of_web_application_frameworks
答案 2 :(得分:1)
ZendFramework怎么样?我认为这是最大的PHP框架,并且在问题中提到了所有选项:)
答案 3 :(得分:0)
Zend Framework + Doctrine ORM
这就是我现在正在使用的。一开始可能有点难学。但我觉得它值得。 Zend Framework 2即将推出(1st Dev Milestone of ZF2 is out)。它支持PHP 5.3“true”命名空间。我目前使用Zend Framework 1.10 + Doctrine 2。我非常喜欢它的组件可以轻松定制以满足您的需求。
它有许多我使用的类(可能在其他框架中不可用)。例如。通过Zend_Test等进行导航,分页,视图助手,(PHPUnit)单元测试的类,使用Zend_Log记录到FireBug / FirePHP。
快速发展&原型如果你的意思是脚手架,那就是Zend_Tool,这是一个CLI应用程序,允许你通过CLI命令创建控制器,动作,模型等组件
我不确定可扩展性。但我听说.NET在企业中常用,所以它必须更具可扩展性。但我不确定。
如果您选择此选项,一些很好的学习资源是:
ASP.NET MVC 2
我还没有使用ASP.NET MVC来创建任何真正的应用程序。但我正在关注它的发展。 MVC 3即将到来...... link& link& link ...通过添加剃刀视图引擎(它类似于轻量级模板引擎)看起来很不错。可以使用C#,我发现它是一种非常强大的语言,包含实体框架(ORM),lambdas,LINQ等。
我认为ASP.NET Web Forms非常适合进行原型设计,但对于凌乱的代码(在我看来)并不好,我认为它不具备可扩展性
这些选项的资源:
答案 4 :(得分:0)
Flex(ActionScript)+ BlazeDS(Java)。这些不是框架,但这种组合只是开发Web应用程序的另一种选择。您可以在客户端(ActionScript)和服务器(Java)上选择框架。使用Flash Builder的Flex适用于快速开发和原型设计以及Java的可伸缩性。
典型的ActionScript框架是Cairngorm或PureMVC。在Java方面,有许多众所周知的框架。常见的组合是Flex / BlazeDS / Hibernate:
答案 5 :(得分:0)
除非您打算创建一些前所未见的应用程序,否则我认为您应该坚持使用您所知道的语言(假设它已经足够好或者有足够大的生态系统来弥补其缺陷(是许多流行语言的情况))。在你的情况下,它似乎是Java(我从你的stackoverlow活动中推测出来;))。
对于Java Web框架,您会发现,stackoverflow上有许多类似/相关的问题:https://stackoverflow.com/search?q=java+web+framework
在一个稍微不相关的说明中,我是Haxe的忠实粉丝和用户(因为这个问题完全超出了这个问题的范围)。如果您有兴趣,那么haXigniter可能是一个很好的框架。
已多次提到PHP。 CakePHP非常时髦,ZendFramework被广泛使用(虽然更多的是一个通用的组件库),但我个人认为symfony,flow3和codeigniter更有利。