Groovy简介
Groovy是Java虚拟机的敏捷和动态语言,以Java语言的优势为基础,添加了从Python、Ruby和Smalltalk等语言中借鉴的特性。提供流行的编程语言特性,学习成本几乎为零。提供静态类型检查的能力,并静态地编译成java字节码,以获得健壮性和性能,与所有现有的Java类和库无缝集成,可以在任何可以使用java的地方使用它。通过其强大的处理原语、OO能力和Ant DSL使编写shell和
基本特性:
支持函数式编程,不需要main函数。一些新的运算符。
默认导入常用的包。
断言不支持jvm的-ea参数进行开关。
支持对对象进行布尔求值。
类不支持default作用域,且默认作用域为public。
groovy中基本类型也是对象,可以直接调用对象的方法。
动态类型。
闭包。
Groovy中的类名不需要像java一样必须只能有一个public的类与文件名相同。Groovy中一个文件可以包含多个public的类定义,并且也可以没有任何类定义。
生态圈:
除了语言和它的API之外,还围绕Groovy催生出了一个卓有成效的项目生态系统,包括web框架、桌面应用程序框架、并发性、测试等各种主题,它们将Groovy作为核心。
Grails是JVM的一个开源、完整的堆栈、web应用程序框架。它利用了Groovy编程语言和约定优于配置,以提供高效的、流媒体的开发体验。
Gradle可以自动化构建、测试、发布、部署以及更多的软件包或其他类型的项目,如生成的静态网站、生成的文档或其他任何东西。
Spock是Java和Groovy应用程序的测试和规范框架。让它脱颖而出的原因是它漂亮而富有表现力的规范语言。得益于它的JUnit运行程序,Spock与大多数ide、构建工具和持续集成服务器兼容。
GPars框架为Java开发人员提供了直观和安全的方法来并发地处理Java或Groovy任务。利用Groovy编程语言的巨大灵活性和基于已证实的Java技术,我们的目标是使多核硬件的并发编程变得直观、健壮和愉快。
Ratpack是一个简单的、有力的、用于创建高性能web应用程序的工具包。
Griffon是在JVM中开发桌面应用程序的应用程序框架,Groovy是首选的语言。受Grails的启发,Griffon遵循了约定优于配置范例,并结合了直观的MVC架构和命令行界面。
Geb是一个强大的浏览器功能测试框架,它允许您在Groovy中快速轻松地编写功能测试。它汇集了WebDriver的强大功能、jQuery内容选择的优雅性、页面对象建模的健壮性以及Groovy语言的表达性。
SDKMAN是在大多数基于Unix的系统上管理多个软件开发工具包的并行版本的工具。它提供了一个方便的命令行界面,用于安装、切换、删除和列出候选项。
还有许多其他的项目使用或构建了Groovy编程语言。比如可以在gitHub上查看Trending。
引入
如果要在项目中引用groovy相关包可以使用maven或者直接下载导入。
不包含模块的groovy核心包。
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy</artifactId>
<version>2.4.15</version>
groovy的不同模块,$module代表不同的模块,如:ant、bsf、console、docgenerator、groovydoc、groovysh、jmx、json、jsr223、servlet、sql、swing、test、testng、xml。
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-$module</artifactId>
<version>2.4.15</version>
groovy核心加上所有的模块。
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>2.4.15</version>
更多推荐
所有评论(0)