Groovy程序设计

Groovy程序设计

(美) 苏帕拉马尼亚姆 (Subramaniam,V.) , 著

出版社:人民邮电出版社

年代:2014

定价:69.0

书籍简介:

本书是一本全面实用的Groovy程序设计指南,既涵盖Groovy编程基础,又涉及该语言的最新高级特性,如模拟对象的单元测试、Builder的使用、在数据库和XML中的以及创建DSL等。本书是具备Java基础的程序员掌握Groovy首选图书。

书籍目录:

目 录

第一部分 Groovy起步

第1章 起步 2

1.1 安装Groovy 2

1.1.1 在Windows系统环境安装Groovy 2

1.1.2 在类Unix系统环境安装Groovy 3

1.2 管理多个版本的Groovy 3

1.3 使用groovysh 4

1.4 使用groovyConsole 5

1.5 在命令行中运行Groovy 5

1.6 使用IDE 6

1.6.1 IntelliJ IDEA 6

1.6.2 Eclipse Groovy插件 6

1.6.3 TextMate Groovy Bundle 6

第2章 面向Java开发者的Groovy 8

2.1 从Java到Groovy 8

2.1.1 Hello,Groovy 8

2.1.2 实现循环的方式 9

2.1.3 GDK一瞥 11

2.1.4 安全导航操作符 13

2.1.5 异常处理 13

2.1.6 Groovy是轻量级的Java 15

2.2 JavaBean 15

2.3 灵活初始化与具名参数 19

2.4 可选形参 20

2.5 使用多赋值 21

2.6 实现接口 22

2.7 布尔求值 25

2.8 操作符重载 27

2.9 对Java 5特性的支持 28

2.9.1 自动装箱 29

2.9.2 for-each 29

2.9.3 enum 30

2.9.4 变长参数 31

2.9.5 注解 32

2.9.6 静态导入 33

2.9.7 泛型 33

2.10 使用Groovy代码生成变换 35

2.10.1 使用@Canonical 35

2.10.2 使用@Delegate 35

2.10.3 使用@Immutable 36

2.10.4 使用@Lazy 37

2.10.5 使用@Newify 38

2.10.6 使用@Singleton 38

2.11 陷阱 40

2.11.1 Groovy的==等价于Java的equals() 40

2.11.2 编译时类型检查默认为关闭 42

2.11.3 小心新的关键字 43

2.11.4 别用这样的代码块 43

2.11.5 闭包与匿名内部类的冲突 43

2.11.6 分号总是可选的 45

2.11.7 创建基本类型数组的不同语法 45

第3章 动态类型 47

3.1 Java中的类型 47

3.2 动态类型 48

3.3 动态类型不等于弱类型 49

3.4 能力式设计 50

3.4.1 使用静态类型 50

3.4.2 使用动态类型 51

3.4.3 使用动态类型需要自律 53

3.5 可选类型 54

3.6 多方法 55

3.7 动态还是非动态 58

3.8 关闭动态类型 58

3.8.1 静态类型检查 59

3.8.2 静态编译 62

第4章 使用闭包 64

4.1 闭包的便利性 64

4.1.1 传统方式 64

4.1.2 Groovy方式 65

4.2 闭包的应用 67

4.3 闭包的使用方式 68

4.4 向闭包传递参数 69

4.5 使用闭包进行资源清理 70

4.6 闭包与协程 72

4.7 科里化闭包 74

4.8 动态闭包 75

4.9 闭包委托 77

4.10 使用尾递归编写程序 80

4.11 使用记忆化改进性能 82

第5章 使用字符串 87

5.1 字面常量与表达式 87

5.2 GString的惰性求值问题 90

5.3 多行字符串 93

5.4 字符串便捷方法 95

5.5 正则表达式 96

第6章 使用集合类 98

6.1 使用List 98

6.2 迭代ArrayList 100

6.2.1 使用List的each方法 100

6.2.2 使用List的collect方法 102

6.3 使用查找方法 102

6.4 List上的其他便捷方法 103

6.5 使用Map类 106

6.6 在Map上迭代 108

6.6.1 Map的each方法 108

6.6.2 Map的collect方法 109

6.6.3 Map的find和findAll方法 109

6.7 Map上的其他便捷方法 110

第二部分 使用Groovy

第7章 探索GDK 114

7.1 使用Object类的扩展 114

7.1.1 使用dump和inspect方法 115

7.1.2 使用上下文with()方法 115

7.1.3 使用sleep 116

7.1.4 间接访问属性 118

7.1.5 间接调用方法 119

7.2 其他扩展 119

7.2.1 数组的扩展 120

7.2.2 使用java.lang的扩展 120

7.2.3 使用java.io的扩展 122

7.2.4 使用java.util的扩展 124

7.3 使用扩展模块定制方法 125

第8章 处理XML 128

8.1 解析XML 128

8.1.1 使用DOMCategory 129

8.1.2 使用XMLParser 131

8.1.3 使用XMLSlurper 131

8.2 创建XML 133

第9章 使用数据库 136

9.1 创建数据库 136

9.2 连接到数据库 137

9.3 数据库的Select操作 137

9.4 将数据转为XML表示 139

9.5 使用DataSet 140

9.6 插入与更新 140

9.7 访问Microsoft Excel 141

第10章 使用脚本和类 143

10.1 Java和Groovy的混合 143

10.2 运行Groovy代码 144

10.3 在Groovy中使用Groovy类 145

10.4 利用联合编译混合使用Groovy和Java 145

10.5 在Java中创建与传递Groovy闭包 146

10.6 在Java中调用Groovy动态方法 148

10.7 在Groovy中使用Java类 150

10.8 从Groovy中使用Groovy脚本 151

10.9 从Java中使用Groovy脚本 153

第三部分 MOP与元编程

第11章 探索元对象协议 158

11.1 Groovy对象 159

11.2 查询方法与属性 162

11.3 动态访问对象 164

第12章 使用MOP拦截方法 166

12.1 使用GroovyInterceptable拦截方法 166

12.2 使用MetaClass拦截方法 168

第13章 MOP方法注入 173

13.1 使用分类注入方法 173

13.2 使用ExpandoMetaClass注入方法 178

13.3 向具体的实例中注入方法 182

13.4 使用Mixin注入方法 184

13.5 在类中使用多个Mixin 187

第14章 MOP方法合成 192

14.1 使用methodMissing合成方法 192

14.2 使用ExpandoMetaClass合成方法 196

14.3 为具体的实例合成方法 199

第15章 MOP技术汇总 201

15.1 使用Expando创建动态类 201

15.2 方法委托:汇总练习 203

15.3 MOP技术回顾 207

15.3.1 用于方法拦截的选项 207

15.3.2 用于方法注入的选项 207

15.3.3 用于方法合成的选项 208

第16章 应用编译时元编程 209

16.1 在编译时分析代码 209

16.1.1 理解代码结构 210

16.1.2 在代码结构中导航 211

16.2 使用AST变换拦截方法调用 214

16.3 使用AST变换注入方法 218

第四部分 使用元编程

第17章 Groovy生成器 224

17.1 构建XML 224

17.2 构建JSON 227

17.3 构建Swing应用 229

17.4 使用元编程定制生成器 230

17.5 使用BuilderSupport 233

17.6 使用FactoryBuilderSupport 236

第18章 单元测试与模拟 240

18.1 本书代码与自动化单元测试 240

18.2 对Java和Groovy代码执行单元测试 241

18.3 测试异常 245

18.4 模拟 245

18.5 使用覆盖实现模拟 247

18.6 使用分类实现模拟 250

18.7 使用ExpandoMetaClass实现模拟 251

18.8 使用Expando实现模拟 253

18.9 使用Map实现模拟 255

18.10 使用Groovy Mock Library实现模拟 255

18.10.1 使用StubFor 256

18.10.2 使用MockFor 257

第19章 在Groovy中创建DSL 261

19.1 上下文 261

19.2 流畅 262

19.3 DSL的分类 263

19.4 设计内部的DSL 264

19.5 Groovy与DSL 264

19.6 使用命令链接特性改进流畅性 265

19.7 闭包与DSL 266

19.8 方法拦截与DSL 267

19.9 括号的限制与变通方案 268

19.10 分类与DSL 270

19.11 ExpandoMetaClass与DSL 271

附录A  Web资源 273

附录B 参考书目 277

内容摘要:

构建高性能JVM应用、将开发效率提高几个数量级,从掌握Groovy开始。本书是关于Groovy编程的,面向对JDK已经有所了解且有意学习Groovy语言及其动态能力的Java程序员,书中将结合很多实际的例子来探索Groovy语言的特性。希望本书能帮助程序员利用这门有趣且强大的语言快速提高开发效率。 本书是为在Java平台上工作的开发者编写的。它最适合那些对Java语言有较深了解的开发人员和测试人员。懂得使用其他语言编程的开发者也可以使用本书,但是他们需要利用有助于深入理解Java和JDK的书籍来补补课,Effective Java和Thinking in Java就是非常不错的学习资源。对Groovy有所了解的程序员可以使用本书来学习一些在其他地方无从得见的诀窍和技巧。另外,已经非常熟悉Groovy的程序员可能会发现本书能够用于培训和辅导组织中的开发者同仁。《Groovy程序设计》是Groovy编程指南,结合诸多实例探索了Groovy语言特性。主要内容包括:Groovy基础知识介绍、如何将Groovy应用于日常编码、MOP与元编程、使用元编程等。  《Groovy程序设计》适合Java开发人员学习Groovy,对Groovy已有了解的程序员也可在本书中学到一些其他书中无从提及的诀窍和技巧。【作者简介】Venkat Subramaniam Agile Developer公司创始人,敏捷开发权威人士。他培训并指导了美国、加拿大、印度和欧洲多国的上千名软件开发人员,并多次在各种大会上发表演讲。除本书外,还著有Jolt大奖图书《高效程序员的45个习惯:敏捷开发修炼之道》。臧秀涛 硕士毕业于中国科学院计算技术研究所。曾从事网络游戏、操作系统等方面的开发工作。喜爱编程语言和编译器相关技术。热爱读书和翻译。

书籍规格:

书籍详细信息
书名Groovy程序设计站内查询相似图书
丛书名图灵程序设计丛书
9787115370419
如需购买下载《Groovy程序设计》pdf扫描版电子书或查询更多相关信息,请直接复制isbn,搜索即可全网搜索该ISBN
出版地北京出版单位人民邮电出版社
版次1版印次1
定价(元)69.0语种简体中文
尺寸24 × 19装帧平装
页数 148 印数 3000

书籍信息归属:

Groovy程序设计是人民邮电出版社于2014.10出版的中图分类号为 TP312 的主题关于 程序语言-程序设计 的书籍。