2011-06-06 38 views
7

我的问题是基于以下问题:Choosing a Java Web Framework now? ..仅在一年后。选择一个java web框架2011

我的问题的原因是一年内发生了很多事情,游戏框架已经成熟等等,我想知道今天最热的东西是什么。今天的框架有什么优点和缺点?

+1

-1我猜你的参考问题是为历史目的而保持开放的,但不应该作为一个很好的问题的例子。这里没有正确的答案,这只是开始讨论。我会投票结束(如果我有足够的代表)。 – 2011-06-06 19:12:53

+0

投票转移到程序员stackexchange – canadiancreed 2011-09-03 03:48:38

回答

3

专注于Java框架,这取决于你的目标(如IT的一切!)

  • 在产品的大公司,你要么使用Java EE或标准的Struts /春/休眠去。它们是经过验证的堆栈,该环境中的可伸缩性需求可以通过这些堆栈来满足,并且有状态可以在该环境中相关。此外,他们使用应用程序(Play,Scala,那是什么?)应用了新版本的“没有人因为购买IBM而被解雇”(012)。喜欢。举起,播放,不管。

  • 对于一家初创公司,我会推荐使用Lift或Play。我个人更喜欢Play,但是YMMV。两者都是简化开发并快速转换的敏捷框架。完美匹配的创业公司。差异(无状态和有状态等)是你在决定之前应该检查的。

关于Scala vs Java,这又取决于它。除非你很幸运,否则你将不被允许在公司环境中使用Scala(尽管如此,它们正在慢慢传播)。对于你自己的项目,这并不重要。对于初创公司,选择你最了解的公司。我知道,学习是有吸引力的,但是如果你有6个月的Scala爱好者经验和5年商业Java经验,那么在Scala创建项目的时间和痛苦并不值得。

+0

为什么公司企业不使用Play或Scala这些有效的选项? – Raynos 2011-06-07 11:00:26

+0

@Raynos大多数公司(特别是咨询公司)倾向于使用“经过验证和普及的”技术,因为它更容易向客户销售(他们在知识曲线之后),而且更容易找到知识便宜的员工(最先进的是通常更昂贵)。至少在Java世界:) – 2011-06-09 14:41:19

+0

虽然我喜欢在技术浪潮的早期阶段。这更有趣。我可以向客户轻松销售Play和Scala。 – Raynos 2011-06-09 14:54:38

3

JSP是一个遗留技术,JSF就像一个恐龙,它是有状态和基于组件的。如果您想开发可以扩展数十,数百,数千个节点的高流量分布式应用程序,则更倾向于使用基于组件的有状态框架。无状态框架可以轻松扩展。 Wicket,Tapestry和Lift也是有状态的。有Click框架,但它没有创新和速度。 Struts很好,但它现在是一个旧框架,Spring mvc 3比struts更好。是的,Spring mvc很好,但现在有更好的Play! Spring很快就变得像Java EE一样,另一方面,Play是一个非常简单的框架,拥有一个伟大的社区和文档。未来是光明的。它有很多核心功能(还有它非常轻巧),还有很多模块可供玩耍(比如rails gems)。在上一个版本中,它获得了websockets,depenency management,db版本管理,更好的scala模块,...更多

特别是,新的scala模板变得非常简单,类型安全,具有最先进的语法(如asp。净mvc剃须刀)与一个伟大的表现,你可以看到在测试http://www.jtict.com/blog/rails-wicket-grails-play-lift-jsp/(玩在测试中是最快的)

你可以同时使用java和scala玩,但在我看来scala是比java更好的语言,与新一代功能(Java不能)竞争C#,Ruby,Python,所以我更喜欢scala。 Lift也是一个Scala框架,但它比玩游戏和高度有状态更复杂。

此外,您的平台和语言选择是伟大的。作为一名经验丰富的.net开发人员,我不推荐asp.net webforms或asp.net mvc,他们总是倾向于使用平台独立的开源技术。 Python/Django和Ruby/Rails速度慢并且不安全。 PHP和Perl是传统技术。今天最好的平台是jvm(.net只适用于窗口和单人死亡的单声道),所以你走在正确的道路上。

+1

请通过拼写检查器。并备份“上个月死亡单声道” – Raynos 2011-06-06 18:53:19

+0

谢谢:)固定了一下 – sirmak 2011-06-06 19:05:34

+0

在彻底读了它之后,它太过于自以为是。 ASP.NET MVC是坚实的。 Python,Ruby和PHP都很好。 Perl CGI脚本是遗留的,但是有一些现代(不太流行)的perl框架。我同意Play是稳定的,但它不是“最好的”。 – Raynos 2011-06-06 19:16:37