注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)程序設(shè)計(jì)綜合Groovy程序設(shè)計(jì)

Groovy程序設(shè)計(jì)

Groovy程序設(shè)計(jì)

定 價(jià):¥69.00

作 者: (美)Venkat Subramaniam 著; 臧秀濤 譯
出版社: 人民郵電出版社
叢編項(xiàng): 圖靈程序設(shè)計(jì)叢書
標(biāo) 簽: 程序設(shè)計(jì) 計(jì)算機(jī)/網(wǎng)絡(luò)

ISBN: 9787115370419 出版時(shí)間: 2014-10-01 包裝: 平裝
開本: 16開 頁數(shù): 278 字?jǐn)?shù):  

內(nèi)容簡介

  《Groovy程序設(shè)計(jì)》是Groovy編程指南,結(jié)合諸多實(shí)例探索了Groovy語言特性。主要內(nèi)容包括:Groovy基礎(chǔ)知識(shí)介紹、如何將Groovy應(yīng)用于日常編碼、MOP與元編程、使用元編程等?!禛roovy程序設(shè)計(jì)》適合Java開發(fā)人員學(xué)習(xí)Groovy,對Groovy已有了解的程序員也可在本書中學(xué)到一些其他書中從提及的訣竅和技巧。

作者簡介

  Venkat Subramaniam,Agile Developer公司創(chuàng)始人,敏捷開發(fā)權(quán)威人士。他培訓(xùn)并指導(dǎo)了美國、加拿大、印度和歐洲多國的上千名軟件開發(fā)人員,并多次在各種大會(huì)上發(fā)表演講。除本書外,還著有Jolt大獎(jiǎng)圖書《高效程序員的45個(gè)習(xí)慣:敏捷開發(fā)修煉之道》。臧秀濤(譯者),碩士畢業(yè)于中國科學(xué)院計(jì)算技術(shù)研究所。曾從事網(wǎng)絡(luò)游戲、操作系統(tǒng)等方面的開發(fā)工作。喜愛編程語言和編譯器相關(guān)技術(shù)。熱愛讀書和翻譯。

圖書目錄

第一部分 Groovy起步
第1章 起步 2
1.1 安裝Groovy 2
1.1.1 在Windows系統(tǒng)環(huán)境安裝Groovy 2
1.1.2 在類Unix系統(tǒng)環(huán)境安裝Groovy 3
1.2 管理多個(gè)版本的Groovy 3
1.3 使用groovysh 4
1.4 使用groovyConsole 5
1.5 在命令行中運(yùn)行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開發(fā)者的Groovy 8
2.1 從Java到Groovy 8
2.1.1 Hello,Groovy 8
2.1.2 實(shí)現(xiàn)循環(huán)的方式 9
2.1.3 GDK一瞥 11
2.1.4 安全導(dǎo)航操作符 13
2.1.5 異常處理 13
2.1.6 Groovy是輕量級的Java 15
2.2 JavaBean 15
2.3 靈活初始化與具名參數(shù) 19
2.4 可選形參 20
2.5 使用多賦值 21
2.6 實(shí)現(xiàn)接口 22
2.7 布爾求值 25
2.8 操作符重載 27
2.9 對Java 5特性的支持 28
2.9.1 自動(dòng)裝箱 29
2.9.2 for-each 29
2.9.3 enum 30
2.9.4 變長參數(shù) 31
2.9.5 注解 32
2.9.6 靜態(tài)導(dǎo)入 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的==等價(jià)于Java的equals() 40
2.11.2 編譯時(shí)類型檢查默認(rèn)為關(guān)閉 42
2.11.3 小心新的關(guān)鍵字 43
2.11.4 別用這樣的代碼塊 43
2.11.5 閉包與匿名內(nèi)部類的沖突 43
2.11.6 分號總是可選的 45
2.11.7 創(chuàng)建基本類型數(shù)組的不同語法 45
第3章 動(dòng)態(tài)類型 47
3.1 Java中的類型 47
3.2 動(dòng)態(tài)類型 48
3.3 動(dòng)態(tài)類型不等于弱類型 49
3.4 能力式設(shè)計(jì) 50
3.4.1 使用靜態(tài)類型 50
3.4.2 使用動(dòng)態(tài)類型 51
3.4.3 使用動(dòng)態(tài)類型需要自律 53
3.5 可選類型 54
3.6 多方法 55
3.7 動(dòng)態(tài)還是非動(dòng)態(tài) 58
3.8 關(guān)閉動(dòng)態(tài)類型 58
3.8.1 靜態(tài)類型檢查 59
3.8.2 靜態(tài)編譯 62
第4章 使用閉包 64
4.1 閉包的便利性 64
4.1.1 傳統(tǒng)方式 64
4.1.2 Groovy方式 65
4.2 閉包的應(yīng)用 67
4.3 閉包的使用方式 68
4.4 向閉包傳遞參數(shù) 69
4.5 使用閉包進(jìn)行資源清理 70
4.6 閉包與協(xié)程 72
4.7 科里化閉包 74
4.8 動(dòng)態(tài)閉包 75
4.9 閉包委托 77
4.10 使用尾遞歸編寫程序 80
4.11 使用記憶化改進(jìn)性能 82
第5章 使用字符串 87
5.1 字面常量與表達(dá)式 87
5.2 GString的惰性求值問題 90
5.3 多行字符串 93
5.4 字符串便捷方法 95
5.5 正則表達(dá)式 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類的擴(kuò)展 114
7.1.1 使用dump和inspect方法 115
7.1.2 使用上下文with()方法 115
7.1.3 使用sleep 116
7.1.4 間接訪問屬性 118
7.1.5 間接調(diào)用方法 119
7.2 其他擴(kuò)展 119
7.2.1 數(shù)組的擴(kuò)展 120
7.2.2 使用java.lang的擴(kuò)展 120
7.2.3 使用java.io的擴(kuò)展 122
7.2.4 使用java.util的擴(kuò)展 124
7.3 使用擴(kuò)展模塊定制方法 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 創(chuàng)建XML 133
第9章 使用數(shù)據(jù)庫 136
9.1 創(chuàng)建數(shù)據(jù)庫 136
9.2 連接到數(shù)據(jù)庫 137
9.3 數(shù)據(jù)庫的Select操作 137
9.4 將數(shù)據(jù)轉(zhuǎn)為XML表示 139
9.5 使用DataSet 140
9.6 插入與更新 140
9.7 訪問Microsoft Excel 141
第10章 使用腳本和類 143
10.1 Java和Groovy的混合 143
10.2 運(yùn)行Groovy代碼 144
10.3 在Groovy中使用Groovy類 145
10.4 利用聯(lián)合編譯混合使用Groovy和Java 145
10.5 在Java中創(chuàng)建與傳遞Groovy閉包 146
10.6 在Java中調(diào)用Groovy動(dòng)態(tài)方法 148
10.7 在Groovy中使用Java類 150
10.8 從Groovy中使用Groovy腳本 151
10.9 從Java中使用Groovy腳本 153
第三部分 MOP與元編程
第11章 探索元對象協(xié)議 158
11.1 Groovy對象 159
11.2 查詢方法與屬性 162
11.3 動(dòng)態(tài)訪問對象 164
第12章 使用MOP攔截方法 166
12.1 使用GroovyInterceptable攔截方法 166
12.2 使用MetaClass攔截方法 168
第13章 MOP方法注入 173
13.1 使用分類注入方法 173
13.2 使用ExpandoMetaClass注入方法 178
13.3 向具體的實(shí)例中注入方法 182
13.4 使用Mixin注入方法 184
13.5 在類中使用多個(gè)Mixin 187
第14章 MOP方法合成 192
14.1 使用methodMissing合成方法 192
14.2 使用ExpandoMetaClass合成方法 196
14.3 為具體的實(shí)例合成方法 199
第15章 MOP技術(shù)匯總 201
15.1 使用Expando創(chuàng)建動(dòng)態(tài)類 201
15.2 方法委托:匯總練習(xí) 203
15.3 MOP技術(shù)回顧 207
15.3.1 用于方法攔截的選項(xiàng) 207
15.3.2 用于方法注入的選項(xiàng) 207
15.3.3 用于方法合成的選項(xiàng) 208
第16章 應(yīng)用編譯時(shí)元編程 209
16.1 在編譯時(shí)分析代碼 209
16.1.1 理解代碼結(jié)構(gòu) 210
16.1.2 在代碼結(jié)構(gòu)中導(dǎo)航 211
16.2 使用AST變換攔截方法調(diào)用 214
16.3 使用AST變換注入方法 218
第四部分 使用元編程
第17章 Groovy生成器 224
17.1 構(gòu)建XML 224
17.2 構(gòu)建JSON 227
17.3 構(gòu)建Swing應(yīng)用 229
17.4 使用元編程定制生成器 230
17.5 使用BuilderSupport 233
17.6 使用FactoryBuilderSupport 236
第18章 單元測試與模擬 240
18.1 本書代碼與自動(dòng)化單元測試 240
18.2 對Java和Groovy代碼執(zhí)行單元測試 241
18.3 測試異?!?45
18.4 模擬 245
18.5 使用覆蓋實(shí)現(xiàn)模擬 247
18.6 使用分類實(shí)現(xiàn)模擬 250
18.7 使用ExpandoMetaClass實(shí)現(xiàn)模擬 251
18.8 使用Expando實(shí)現(xiàn)模擬 253
18.9 使用Map實(shí)現(xiàn)模擬 255
18.10 使用Groovy Mock Library實(shí)現(xiàn)模擬 255
18.10.1 使用StubFor 256
18.10.2 使用MockFor 257
第19章 在Groovy中創(chuàng)建DSL 261
19.1 上下文 261
19.2 流暢 262
19.3 DSL的分類 263
19.4 設(shè)計(jì)內(nèi)部的DSL 264
19.5 Groovy與DSL 264
19.6 使用命令鏈接特性改進(jìn)流暢性 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

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.afriseller.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號