Raible再度对比Web框架

上周Matt Raible在ApacheCon上做了一个演讲 (PDF 1, 2),对众多的Java Web框架进行比较。这是对他在几年前做过的一次演讲的补充。在两页的PDF中包括以下Java Web 框架:

  • JSF

  • Spring MVC

  • Struts 2

  • Stripes

  • Tapestry

  • Wicket

另外还涉及到一些由于开发场景的变化而带来的不同技术:
  • Flex

  • Grails

  • GWT

  • Seam

  • Struts 2

  • Wicket

这次演讲使用了如下的标准来对一些web框架进行了严苛的对比:

  • Ajax支持:是否内建并易于使用?

  • 添加书签能力:用户是否能轻松添加书签并返回?

  • 验证:是否容易使用并支持客户端(JavaScript)验证?

  • 可测试性:能否脱离容器历来测试Controller?

  • 社区和支持:有问题是否能够得到快速(并礼貌)的解答?

Raible发现了所有web框架的优点以及缺点。一些统计数据表明Struts和JSF在职场中引领趋势,但Raible也指出还有大量的web框架在职场中同样吃香。 为项目选择正确的web框架只能是开发者的职责,Raible对如何选择一个web框架给出了一些重要的考虑因素:
  • 你正在构建的是什么类型的应用?

  • 是为了简便开发还是出于全栈式考虑?

  • 技术特性

与人们所预期的一样,Raible对于web框架的观点引起了广泛的争议。Seam的创造者Gavin King评论道:

在我看来,这个列表最有趣的地方在于每个框架和其他框架是怎样的不同。就在几年前,任何包括这些顶级web框架的列表都包含着一堆action风格的MVC框架,以及一个或两个组件风格的MVC框架。

Adobe's的James Ward不同意Raible对于Flex的评价并反驳道 :

虽然我们现在可以整天反复地争论这些观点,但事实上它的确取决于你所构建的应用。我发现最有趣的是这些框架如何来构建RIA应用。这样能帮助开发人员缩小一点范围,因为以内容为中心的应用实在是和RIA区别太大了。但RIA到底是什么?我曾经试图 定义过RIA。
基于这些特征,我可以更明确地告诉你Flex作为RIA框架是什么样子的。

Raible指出前途是光明的,因为所有的竞争都是在web框架范围内。考虑到这次演讲中有一半的web框架都是他以前那次演讲中没有提到过的,所以他是对的。

查看英文原文:Raible Revisits Comparing Web Frameworks

你可能感兴趣的:(Raible再度对比Web框架)