Groovy+Grails相比Java EE有哪些优势,可以提高生产效率?

5

最近我经常听到“Grails”和“Groovy”的提及,大多数人都说它是一个极大的生产力提升工具,相比于标准的Java EE、JSF、Struts等,而且他们网站上也有一些支持这种说法的案例研究。因此,我想探索一下这方面。

在开始之前,我很好奇是否有任何材料(链接、博客、文章、论文等)可以解释Grails+Groovy中的特殊功能(而在Java EE世界中找不到),使其成为更具生产力的工作环境呢?

2个回答

8

维基百科Grails页面提供了一个基本解释:

与传统的Java Web框架相比,Grails具有三个属性,试图提高生产力:

  • 无需XML配置
  • 可用的开发环境
  • 通过mixin提供的功能

第一点实际上应该是“较少的配置”,这是由RoR流行的约定配置所导致的:该框架解决了某一类应用程序的开发,并在该上下文中提供了合理的默认值。

第二点也很有价值:一个Hello World应用程序可以在几个Grails命令中同时开发和部署。这降低了进入门槛,增加了心智份额,并使开发经验比纯Java开发更加流畅。

我将使用来自Grails GORM页面的示例来说明第3点。Grails允许您编写此类代码,以从“book”表中检索书籍的标题,而无需设置太多内容:

Book.findByTitle("Groovy in Action")

当然,这是Groovy更普遍特性的结果:它的动态性。
要了解更多实用的生产力增长报告,请参见Sky 报告

2

当一个框架能够最大限度地减少做某事的努力时,它变得非常有用。这就是为什么C比汇编语言更成功,C++改进了C,Java又在C++的基础上发展。

虽然没有严格列出优缺点,但我喜欢早期Groovy开发人员之一在博客文章中对该主题的讨论。此外,我还喜欢Java EE领域的主要架构师之一Martin Fowler在另一个现代数据库支持的Web应用程序框架上的讨论(链接)

我也是通过测试Java应用程序时首次接触到Groovy的。你会接触到Dirk Koenig的工作,例如短的Groovy演示文稿。顺便说一下,如果您想开发与“云”相关的应用程序,则Ruby也可以打开许多门。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接