huweihong
作者huweihong·2010-07-16 11:04
软件开发工程师·自由职业者

书评:《Groovy for Domain-Specific Languages》

字数 918阅读 2631评论 0赞 0

mrhaki在自己的Blog上撰写了一篇《Groovy for Domain-Specific Languages》的书评

《Groovy for Domain-Specific Languages》的副标题是“用Groovy书写领域特定语言扩展和增强Java应用”。这本书的目标读者是想要书写领域特定语言(DSL)和将它与自己应用集成的Java开发者。

一开始,mrhaki简单介绍了各章的内容:

  • 因为面向的Java开发者,所以前两章更多的是基础知识的介绍:Groovy和DSL简介、Groovy安装和运行。
  • 第三章作者着重谈到了闭包,但未涉及Groovy 1.7.2的curry方法。
  • 了解完前三章的基础知识之后,作者给出了一个Twitter客户端DSL的实现。
  • 在第五章里,作者介绍了一些高级的Groovy概念,包括命名参数、Builder、MOP、ExpandoMetaClass等。
  • 接下来,作者展示了Groovy社区里现有的DSL,如GORM、Gant、Spock、EasyB。
  • 鉴于Builder的重要性,作者把第七章都留给了它。mrhaki还给出了下载的样章
  • 读者将在第八章学到如何创建自己的规则DSL。
  • 最后一章,作者展示了把上一章实现的DSL集成到Java的几种方法。

在文末对于整本书的总结中,mrhaki写道:

《Groovy for Domain-Specific Languages》是本学习如何用Groovy写DSL的好书。作为Java开发者,我们学到了足以使用Groovy的知识,但要是我们已经熟悉 Groovy,我们可以跳过那些介绍Groovy特性的章节。在第4章我们就已学到写一个Twitter API的DSL,这非常好。这说明写DSL未必就很困难。书的其余部分介绍了更强大的特性,这样我们最终学会了写Builder,并完成了一个可以集成到 Java或Groovy应用的通用规则DSL。本书是一个良好的起点,提供了开始用Groovy书写我们自己的领域特定语言的有益代码。作者并没有涵盖另 一种写DSL的方法,AST transformations,但就提供内容来说,我们已经收益颇多了。

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

0

添加新评论0 条评论

Ctrl+Enter 发表

作者其他文章

相关文章

相关问题

相关资料

X社区推广