Groovy入门

#Groovy

  • DSL 简单了解;
  • Groovy 的基本概念;
  • Groovy 的特性;
  • Groovy 的优势
  • 总结;

## DSL

学习 Groovy 语言,首先要了解一下什么是 DSL

英文:Domain Specify Language
中文:领域特定语言

顾名思义,DSL 是用于解决特定领域的语言,例如UML就是用来将现实世界的模型转化为计算机模型的一种建模语言,而 Groovy就是 DSL 的一个分支。

## Groovy

Groovy是一种基于 JVM(Java虚拟机) 的敏捷开发语言,它结合了 PythonRubySmalltalk 的许多强大的特性,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下午」

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Groovy入门经典》奉书内容全面详尽,浅显易懂,易于选择性阅读。可以作为对Groovy语言感兴趣的计算机软件开发人员的参考书。.., Groovy是唯一能够扩展Java平台的脚本语言。Groovy提供类似于Java的语法结构,本地化支持映射和列表、方法、类,闭包和构造器等结构。由于具有动态弱类型,以及无缝访问JavaAPI等特性,Groovy语言非常适合子开发中小型规模的应用程序。, 相对于Java语言,Groovy语言的表述性更强,抽象程度更高。它使得应用程序开发更加快捷,提升了程序员生产力。Groovy语言可以用作应用程序的“黏合剂”,而不必实现复杂的数据结构和算法。, 与Java代码比较起来,Groovy语言的另一个主要优势是,Groovy代码编写量相对小些。在一般情况下,Java代码过于复杂,难于理解和维护。这是因为Java需要大量的模板文件或者转换代码,而Groovy却不需要。, 本书是有关Groovy的第一本正式出版物,作者Kenneth Barclay和John Savage介绍了Groovy开发的所有主要领域,并解释了这种创新性的编程语言给Java平台赋予的动态特性。阅读本书只要求具备Java编程的一般性知识。不管你是经验丰富的Java开发者,还是脚本语言的新手,都会得到如何充分利用Groovy语言的专家性指导。, 本书特点第一本全面讲解Groovy编程的图书,演示如何快速和轻松地编写适用于Java平台的应用程序和脚本。, 本书由高水平软件工程师精心编写,并得到计算机老师和专家的高度赞扬。, 提供大量编程范例、代码范例、详细的案例分析、习题,非常适合自学。本书还有一个支持网站;并提供一个基于Windows的Groovy编辑器。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值