什么是“Groovy”和“Grails”以及使用它们构建了哪些类型的应用程序?

时间:2009-10-04 22:25:50

标签: grails groovy

现在我听到很多关于“Grails上的Groovy”的内容,我想了解更多信息:

  • 什么是Groovy?
  • 什么是Grails?
  • 在Grails上使用Groovy构建了什么类型的应用程序?

4 个答案:

答案 0 :(得分:178)

  1. Grails上的Groovy是什么?

    此名称不再存在。它现在简称为 Grails

  2. 什么是Groovy?

    最初是JVM的动态语言。但是,自Groovy 2.0以来,支持静态和动态类型。

  3. 什么是Grails?

    Grails(以前称为“Groovy on Grails”)是一个基于Groovy的编程框架,受Ruby on Rails的启发(存在差异,但也有很多相似之处)。与RoR一样,Grails推广“按惯例编码”,开发最佳实践,并且意味着高效率。

  4. 使用“ Groovy on Grails”构建了什么类型的应用程序?

    Grails用于构建在JVM上运行的Web应用程序。

  5. Groovy对 Grails有什么好处?

    高生产力,专注于业务而非管道。 (请注意,我不建议将Grails与现有数据模型一起使用。这背后的原因是Grails鼓励采用自上而下的方法,因为Domain类导致数据库ER模型出​​现。如果您正在使用遗留数据库,你不能采用这种方法。你必须将数据库映射到域类,并且可能命名约定不匹配,必须使用hbm.xml Hibernate配置文件或注释.IMO,这不是一个在工作流程中发生微不足道的变化,它会变得非常麻烦,最终会失去Grails的大部分优势。)

  6. 当我们使用C / C ++,Java / J2EE和.NET / C#等标准编程语言时,为什么要在 Grails上使用 Groovy?

    由于第5点。

答案 1 :(得分:23)

Groovy 是Java平台的面向对象编程语言。它是一种动态语言,其功能类似于Python,Ruby,Perl和Smalltalk。它可以用作Java平台的脚本语言。 Groovy具有类似Java的语法,可以与Java字节码无缝协作。

其他功能包括:

  • 轻松学习曲线
  • 支持特定于域的语言
  • 紧凑语法
  • 支持动态输入
  • 强大的处理原语
  • 轻松实现Web应用程序开发
  • 支持单元测试。

Grails 是一个使用Groovy编程语言的开源Web应用程序框架。通过遵循“按惯例编码”范例,提供独立的开发环境并隐藏开发人员的大部分配置细节,它旨在成为一个高生产力的框架。

像Rails一样,Grails似乎就是我所谓的“强烈粒度”。如果你以Grails的方式做事,开发很容易(通常很快)。该框架往往具有做大多数事情的首选方式。另一方面,如果你需要反对谷物,你将有一个相对粗糙的时间。

并且不要在Grails上说Groovy(不存在),原因请参考this博客。

答案 2 :(得分:11)

Grails与Ruby on Rails直接类似,但与Groovy一起运行。什么是Groovy?它是一种在Java虚拟机(JVM)上运行的脚本语言。

因此,您可以使用已有或可用的Java库(因为它们被编译为字节码并因此在JVM上运行),以及JVM的强大功能(用于垃圾收集,通过JIT编译等速度等) 。)和Groovy的简洁。 Java程序员选择Groovy的学习曲线应该非常小(因此可以利用大量可用的Java程序员)。

这是一种非常不同的方式,可以将Web应用程序创建为servlet编程,JSP,Java Server Faces等标准Java机制.Grails(如Ruby on Rails)承诺比标准开发机制更加动态和迭代的开发环境(无论是否这是真的在实践中,我不能建议)

答案 3 :(得分:0)

Grails- MVC框架,用于开发Web应用程序和现成的代码平台,并在Spring + Hibernate顶部构建了DRY(不要重复)。 Grails平台负责运行Web应用程序的基础结构和相关性,以便开发人员可以专注于为产品构建功能。 Grails-一个很好的框架,可供启动组织将产品从开发模式发布到生产模式。