Groovy 语言总结

本章开始部分没有太多的惊喜,仅仅显示了在java和 groovy中定义和组织类的异同,我们介绍了方法和构造器的命名参数,方法的可选参数,通过下标操作符动态的查找类属性,也介绍了 Groovy 的“运行时加载”的能力,她的步骤于 java 有明显的不同。

Groovy 的 JavaBean 的处理约定被增强,也展示了 groovy 类的 JavaBean 风格的 属性比相应的 Java 等价物简单和更具有自描述能力。到你看到 groovy 增强功能如 GPath 和 category 的时候,偏差已经很明显,并且 groovy 的动态特性已经开始显示出了痕迹。

最后,通过 groovy 中 MOP 实现的讨论,了解了动态特性的实现。

回顾语言的不同方面是相互依存和支撑的,使用 map 的缺省构造方法,在下标操作符中使用 range,通过操作符覆盖来使用 switch 进行结构控制,使用闭包来过滤 list,在一般的构造方法中使用 list 类型,通过属性语法使用 bean 属性等等,这些功能不但使 groovy 更强大而且也使 groovy 更有趣。

在不改变可读性的情况下 Groovy 代码的紧凑性是十分显著的,也有报告说由于每天只编写了 70 行代码,开发者的生产率没有得到提高。实际上现在提高生产率是在每一行代码中,现在每一行代码表达了更多的内容,现在, groovy 的一行代码可以替换 java 的多行代码,我们能够看到下一个提升开发者生产率的重点内容。