图书说明:
在JVM上开发的时代意味着你是一名Java程序员,早已过去了。JVM现在已经成为一个多语言开发环境,许多项目都选择了Java的替代开发语言,如Groovy,Scala,Clojure和JRuby。在这个开发语言的万神殿中,Groovy因其出色的DSL功能而脱颖而出,这使得它可以被操作以生成适合项目需求的迷你语言。
本书是一本关于设计和开发基于Groovy的特定领域特定语言的综合教程,将指导您开发几种迷你DSL,帮助您充满信心,轻松地获得开发基于Groovy的DSL所需的所有技能。
从基础知识开始,本书将重点介绍如何使用Groovy构建特定于域的迷你语言,并将介绍Groovy的更复杂的元编程功能,包括使用抽象语法树(AST)。本书中使用的实际例子可以解释这些看似复杂的语言特性,并展示它们如何用于创建简单而优雅的DSL。这本书包含了一些示例,包括几个完全工作的DSL,将作为开发自己的DSL的跳板。
本书适用于谁
本书适用于有兴趣在其Java应用程序中构建域脚本的Java软件开发人员。不需要了解Groovy,尽管它会有所帮助。本书不讲授Groovy,但很快介绍了Groovy的基本思想。有经验的Java开发人员应该没有这些问题,并快速进入使用Groovy创建DSL的更复杂的方面。不需要创建DSL的经验。
你会学到什么
- 熟悉Groovy脚本并使用Groovy闭包
- 使用Groovy中的元编程功能来构建迷你语言
- 使用Groovy标记和构建器来简化应用程序开发
- 熟悉Groovy标记并构建自己的Groovy构建器
- 使用运算符重载,命令链,构建器和许多其他Groovy语言功能构建有效的DSL
- 将Groovy与基于Java和JVM的应用程序集成