注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(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ì)叢書(shū)
標(biāo) 簽: 程序設(shè)計(jì) 計(jì)算機(jī)/網(wǎng)絡(luò)

購(gòu)買(mǎi)這本書(shū)可以去


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

內(nèi)容簡(jiǎn)介

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

作者簡(jiǎn)介

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

圖書(shū)目錄

第一部分 Groovy起步
第1章 起步 2
1.1 安裝Groovy 2
1.1.1 在Windows系統(tǒng)環(huán)境安裝Groovy 2
1.1.2 在類(lèi)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開(kāi)發(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是輕量級(jí)的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 對(duì)Java 5特性的支持 28
2.9.1 自動(dòng)裝箱 29
2.9.2 for-each 29
2.9.3 enum 30
2.9.4 變長(zhǎng)參數(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í)類(lèi)型檢查默認(rèn)為關(guān)閉 42
2.11.3 小心新的關(guān)鍵字 43
2.11.4 別用這樣的代碼塊 43
2.11.5 閉包與匿名內(nèi)部類(lèi)的沖突 43
2.11.6 分號(hào)總是可選的 45
2.11.7 創(chuàng)建基本類(lèi)型數(shù)組的不同語(yǔ)法 45
第3章 動(dòng)態(tài)類(lèi)型 47
3.1 Java中的類(lèi)型 47
3.2 動(dòng)態(tài)類(lèi)型 48
3.3 動(dòng)態(tài)類(lèi)型不等于弱類(lèi)型 49
3.4 能力式設(shè)計(jì) 50
3.4.1 使用靜態(tài)類(lèi)型 50
3.4.2 使用動(dòng)態(tài)類(lèi)型 51
3.4.3 使用動(dòng)態(tài)類(lèi)型需要自律 53
3.5 可選類(lèi)型 54
3.6 多方法 55
3.7 動(dòng)態(tài)還是非動(dòng)態(tài) 58
3.8 關(guān)閉動(dòng)態(tài)類(lèi)型 58
3.8.1 靜態(tài)類(lè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 使用尾遞歸編寫(xiě)程序 80
4.11 使用記憶化改進(jìn)性能 82
第5章 使用字符串 87
5.1 字面常量與表達(dá)式 87
5.2 GString的惰性求值問(wèn)題 90
5.3 多行字符串 93
5.4 字符串便捷方法 95
5.5 正則表達(dá)式 96
第6章 使用集合類(lèi) 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類(lèi) 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類(lèi)的擴(kuò)展 114
7.1.1 使用dump和inspect方法 115
7.1.2 使用上下文with()方法 115
7.1.3 使用sleep 116
7.1.4 間接訪問(wèn)屬性 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ù)庫(kù) 136
9.1 創(chuàng)建數(shù)據(jù)庫(kù) 136
9.2 連接到數(shù)據(jù)庫(kù) 137
9.3 數(shù)據(jù)庫(kù)的Select操作 137
9.4 將數(shù)據(jù)轉(zhuǎn)為XML表示 139
9.5 使用DataSet 140
9.6 插入與更新 140
9.7 訪問(wèn)Microsoft Excel 141
第10章 使用腳本和類(lèi) 143
10.1 Java和Groovy的混合 143
10.2 運(yùn)行Groovy代碼 144
10.3 在Groovy中使用Groovy類(lèi) 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類(lèi) 150
10.8 從Groovy中使用Groovy腳本 151
10.9 從Java中使用Groovy腳本 153
第三部分 MOP與元編程
第11章 探索元對(duì)象協(xié)議 158
11.1 Groovy對(duì)象 159
11.2 查詢(xún)方法與屬性 162
11.3 動(dòng)態(tài)訪問(wèn)對(duì)象 164
第12章 使用MOP攔截方法 166
12.1 使用GroovyInterceptable攔截方法 166
12.2 使用MetaClass攔截方法 168
第13章 MOP方法注入 173
13.1 使用分類(lèi)注入方法 173
13.2 使用ExpandoMetaClass注入方法 178
13.3 向具體的實(shí)例中注入方法 182
13.4 使用Mixin注入方法 184
13.5 在類(lèi)中使用多個(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)類(lè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章 單元測(cè)試與模擬 240
18.1 本書(shū)代碼與自動(dòng)化單元測(cè)試 240
18.2 對(duì)Java和Groovy代碼執(zhí)行單元測(cè)試 241
18.3 測(cè)試異常 245
18.4 模擬 245
18.5 使用覆蓋實(shí)現(xiàn)模擬 247
18.6 使用分類(lèi)實(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的分類(lèi) 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 括號(hào)的限制與變通方案 268
19.10 分類(lèi)與DSL 270
19.11 ExpandoMetaClass與DSL 271
附錄A  Web資源 273
附錄B 參考書(shū)目 277

本目錄推薦

掃描二維碼
Copyright ? 讀書(shū)網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)