#Groovy
- DSL 简单了解;
- Groovy 的基本概念;
- Groovy 的特性;
- Groovy 的优势
- 总结;
## DSL
学习 Groovy
语言,首先要了解一下什么是 DSL
。
英文:Domain Specify Language
中文:领域特定语言
顾名思义,DSL
是用于解决特定领域
的语言,例如UML
就是用来将现实世界的模型转化为计算机模型的一种建模语言,而 Groovy
就是 DSL
的一个分支。
## Groovy
Groovy
是一种基于 JVM(Java虚拟机)
的敏捷开发语言,它结合了 Python
、Ruby
和 Smalltalk
的许多强大的特性,Groovy
代码能够与 Java 代码很好地结合,也能用于扩展现有代码。由于其运行在JVM
上的特性,Groovy
可以使用其他 Java
语言编写的库。
### Groovy 的特性
- 动态类型
使用 def 定义数据类型 ,Groovy 会根据变量的赋值来动态推断该变量的类型。
- 闭包
闭包就是可以使用参数的代码片段,每个闭包会被编译成继承groovy.lang.Closure 类的类,这个类有一个叫 call 方法,通过该方法可以传递参数并调用这个闭包。
- 兼容 Java 类库
因为底层都是基于 JVM ,因此在 Groovy 中也是可以像 Java 一样使用 Gson 等第三类库。
- 一门面向对象和面向过程的编程语言。
Groovy 是即可以用面向对象的思维来编写像 Java 这样的代码,也可以用面向过程的思维来编写像 Gradle 这样的构建脚本。
### Groovy 的优势
- 敏捷的编程语言
因为吸收了 Python 等脚本语言的特性, Groovy 的语法也是很简洁,开发相同的功能,确实是 Java 更加高效。
- 入门简单,功能强大,适合有 Java 基础的人学习
因为 Groovy 是基于 JVM 的,因此有 Java 编程基础的同学,上手也是很 easy 的。并且它对 Java 的一些类库做了扩展,因此可以编写更少的代码实现同一样的功能。
- 即可以是编程语言,也可以是脚本语言
在编写 Groovy 时,我们可以像写 Java 一样来写 Groovy ,也可以像写 Python 一样来写脚本。
## 总结
以上简单地总结了 DSL
, Groovy
的基本概念,特性以及优势,我们的目的就是要通过学习 Groovy
语言为编写 Gradle
构建脚本打下基础。
##参考:
「记录于2018-07-01下午」
网友评论