天堂国产午夜亚洲专区-少妇人妻综合久久蜜臀-国产成人户外露出视频在线-国产91传媒一区二区三区

設(shè)計(jì)模式之禪_《重構(gòu)與模式》(Refactoring To Patterns)中英文版

發(fā)布時(shí)間:2016-12-23 19:11

  本文關(guān)鍵詞:重構(gòu)與模式,由筆耕文化傳播整理發(fā)布。



《重構(gòu)與模式》(Refactoring To Patterns)中英文版



《重構(gòu)與模式》開(kāi)創(chuàng)性地深入揭示了重構(gòu)與模式這兩種軟件開(kāi)發(fā)關(guān)鍵技術(shù)之間的聯(lián)系,,說(shuō)明了通過(guò)重構(gòu)實(shí)現(xiàn)模式改善既有的設(shè)計(jì),往往優(yōu)于在新的設(shè)計(jì)早期使用模式。
重構(gòu)與模式》不僅展示了一種應(yīng)用模式和重構(gòu)的創(chuàng)新方法,而且有助于讀者結(jié)合實(shí)戰(zhàn)深入理解重構(gòu)和模式。書(shū)中講述了27種重構(gòu)方式。.
本書(shū)適于面向?qū)ο筌浖_(kāi)發(fā)人員閱讀,也可作為高校計(jì)算機(jī)專業(yè)、軟件工程專業(yè)師生的參考讀物。
1994年,《設(shè)計(jì)模式》為我們帶來(lái)了常見(jiàn)設(shè)計(jì)問(wèn)題的經(jīng)典解決方案,從而改變了整個(gè)面向?qū)ο箝_(kāi)發(fā)的面貌。
1999年,《重構(gòu)》為我們帶來(lái)了一種改進(jìn)代碼的高效過(guò)程,從而徹底改變了面向?qū)ο笤O(shè)計(jì)的方式。..
現(xiàn)在,在眾所期盼之中,Joshua Kerievsky的《重構(gòu)與模式》第一次深入和全面地論述了設(shè)計(jì)模式的運(yùn)用與演進(jìn)式的重構(gòu)過(guò)程,并揭示了兩者之間至關(guān)重要的聯(lián)系,又一次革命性地改變了我們的設(shè)計(jì)方式。

重構(gòu)與模式》闡述了模式導(dǎo)向重構(gòu)的理論與實(shí)踐,提出使用模式改善既有設(shè)計(jì)優(yōu)于在設(shè)計(jì)早期使用模式的重要觀點(diǎn)。書(shū)中包含了27種模式導(dǎo)向重構(gòu),每種重構(gòu)通過(guò)一系列較小的重構(gòu),安全地在設(shè)計(jì)中實(shí)現(xiàn)、趨向和去除模式。實(shí)例均出自真實(shí)項(xiàng)目的代碼。通過(guò)本書(shū),讀者不僅能夠更好地學(xué)習(xí)和理解模式和重構(gòu),了解兩個(gè)領(lǐng)域的新進(jìn)展和業(yè)界最新領(lǐng)悟,還能夠?qū)W到實(shí)戰(zhàn)中實(shí)現(xiàn)模式的多種方式,學(xué)會(huì)如何在不同情況下進(jìn)行選擇。...

重構(gòu)與模式》目錄信息
第1章 本書(shū)的寫(xiě)作緣由 1
1.1 過(guò)度設(shè)計(jì) 1
1.2 模式萬(wàn)靈丹 2
1.3 設(shè)計(jì)不足 2
1.4 測(cè)試驅(qū)動(dòng)開(kāi)發(fā)和持續(xù)重構(gòu) 3
1.5 重構(gòu)與模式 5
1.6 演進(jìn)式設(shè)計(jì) 6
第2章 重構(gòu) 7
2.1 何謂重構(gòu) 7
2.2 重構(gòu)的動(dòng)機(jī) 8
2.3 眾目睽睽 9
2.4 可讀性好的代碼 10
2.5 保持清晰 11
2.6 循序漸進(jìn) 11
2.7 設(shè)計(jì)欠賬 12
2.8 演變出新的架構(gòu) 13
2.9 復(fù)合重構(gòu)與測(cè)試驅(qū)動(dòng)的重構(gòu) 13
2.10 復(fù)合重構(gòu)的優(yōu)點(diǎn) 15
2.11 重構(gòu)工具 15
第3章 模式 17

【作譯者介紹】
重構(gòu)與模式》提供作譯者介紹
Joshua Kerievsky資深軟件設(shè)計(jì)師,軟件開(kāi)發(fā)公司Industrial Logic的創(chuàng)始人,是年輕一代軟件開(kāi)發(fā)方面最具人氣的專家之一。他曾為許多專業(yè)雜志撰稿,交多次在世界級(jí)技術(shù)會(huì)議上擔(dān)任講師。除本書(shū)外,他還參與撰寫(xiě)了 Extreme Programming Explored和Extreme Programming perspectives.



目錄

第1章 本書(shū)的寫(xiě)作緣由 1
1.1 過(guò)度設(shè)計(jì) 1
1.2 模式萬(wàn)靈丹 2
1.3 設(shè)計(jì)不足 2
1.4 測(cè)試驅(qū)動(dòng)開(kāi)發(fā)和持續(xù)重構(gòu) 3
1.5 重構(gòu)與模式 5
1.6 演進(jìn)式設(shè)計(jì) 6

第2章 重構(gòu) 7
2.1 何謂重構(gòu) 7
2.2 重構(gòu)的動(dòng)機(jī) 8
2.3 眾目睽睽 9
2.4 可讀性好的代碼 10
2.5 保持清晰 11
2.6 循序漸進(jìn) 11
2.7 設(shè)計(jì)欠賬 12
2.8 演變出新的架構(gòu) 13
2.9 復(fù)合重構(gòu)與測(cè)試驅(qū)動(dòng)的重構(gòu) 13
2.10 復(fù)合重構(gòu)的優(yōu)點(diǎn) 15
2.11 重構(gòu)工具 15

第3章 模式 17
3.1 何謂模式 17
3.2 模式癡迷 18
3.3 實(shí)現(xiàn)模式的方式不止一種 20
3.4 通過(guò)重構(gòu)實(shí)現(xiàn)、趨向和去除模式 22
3.5 模式是否會(huì)使代碼更加復(fù)雜 24
3.6 模式知識(shí) 25
3.7 使用模式的預(yù)先設(shè)計(jì) 26

第4章 代碼壞味 29
4.1 重復(fù)代碼(Duplicated Code) 31
4.2 方法過(guò)長(zhǎng)(Long Method) 31
4.3 條件邏輯太復(fù)雜(Conditional Complexity) 32
4.4 基本類型迷戀(Primitive Obsession) 33
4.5 不恰當(dāng)?shù)谋┞?Indecent Exposure) 33
4.6 解決方案蔓延(Solution Sprawl) 34
4.7 異曲同工的類(Alternative Classes with Different Interfaces) 34
4.8 冗贅類(Lazy Class) 34
4.9 類過(guò)大(Large Class) 34
4.10 分支語(yǔ)句(Switch Statement) 35
4.11 組合爆炸(Combinatorial Explosion) 35
4.12 怪異解決方案(Oddball Solution) 35

第5章 模式導(dǎo)向的重構(gòu)目錄 37
5.1 重構(gòu)的格式 37
5.2 本目錄中引用的項(xiàng)目 38
5.2.1 XML Builder 39
5.2.2 HTML Parser 39
5.2.3 貸款風(fēng)險(xiǎn)計(jì)算程序 40
5.3 起點(diǎn) 40
5.4 學(xué)習(xí)順序 41

第6章 創(chuàng)建 43
6.1 用Creation Method替換構(gòu)造函數(shù) 44
6.1.1 動(dòng)機(jī) 44
6.1.2 做法 46
6.1.3 示例 46
6.1.4 變體 51
6.2 將創(chuàng)建知識(shí)搬移到Factory 52
6.2.1 動(dòng)機(jī) 53
6.2.2 做法 55
6.2.3 示例 56
6.3 用Factory封裝類 61
6.3.1 動(dòng)機(jī) 62
6.3.2 做法 63
6.3.3 示例 63
6.3.4 變體 66
6.4 用Factory Method引入多態(tài)創(chuàng)建 68
6.4.1 動(dòng)機(jī) 68
6.4.2 做法 69
6.4.3 示例 71
6.5 用Builder封裝Composite 74
6.5.1 做法 76
6.5.2 示例 77
6.5.3 變體 87
6.6 內(nèi)聯(lián)Singleton 90
6.6.1 動(dòng)機(jī) 90
6.6.2 做法 92
6.6.3 示例 93

第7章 簡(jiǎn)化 97
7.1 組合方法 98
7.1.1 動(dòng)機(jī) 98
7.1.2 做法 100
7.1.3 示例 100
7.2 用Strategy替換條件邏輯 103
7.2.1 動(dòng)機(jī) 103
7.2.2 做法 105
7.2.3 示例 106
7.3 將裝飾功能搬移到Decorator 115
7.3.1 動(dòng)機(jī) 115
7.3.2 做法 119
7.3.3 示例 120
7.4 用State替換狀態(tài)改變條件語(yǔ)句 134
7.4.1 動(dòng)機(jī) 134
7.4.2 做法 135
7.4.3 示例 136
7.5 用Composite替換隱含樹(shù) 144
7.5.1 動(dòng)機(jī) 144
7.5.2 做法 147
7.5.3 示例 148
7.6 用Command替換條件調(diào)度程序 155
7.6.1 動(dòng)機(jī) 156
7.6.2 做法 157
7.6.3 示例 158

第8章 泛化 165
8.1 形成Template Method 166
8.1.1 動(dòng)機(jī) 167
8.1.2 做法 168
8.1.3 示例 168
8.2 提取Composite 173
8.2.1 動(dòng)機(jī) 173
8.2.2 做法 174
8.2.3 示例 175
8.3 用Composite替換一/多之分 181
8.3.1 動(dòng)機(jī) 181
8.3.2 做法 183
8.3.3 示例 184
8.4 用Observer替換硬編碼的通知 191
8.4.1 動(dòng)機(jī) 191
8.4.2 做法 192
8.4.3 示例 193
8.5 通過(guò)Adapter統(tǒng)一接口 200
8.5.1 動(dòng)機(jī) 200
8.5.2 做法 201
8.5.3 示例 202
8.6 提取Adapter 209
8.6.1 動(dòng)機(jī) 209
8.6.2 做法 211
8.6.3 示例 211
8.6.4 變體 217
8.7 用Interpreter替換隱式語(yǔ)言 218
8.7.1 動(dòng)機(jī) 218
8.7.2 做法 220
8.7.3 示例 221

第9章 保護(hù) 231
9.1 用類替換類型代碼 232
9.1.1 動(dòng)機(jī) 232
9.1.2 做法 234
9.1.3 示例 235
9.2 用Singleton限制實(shí)例化 240
9.2.1 動(dòng)機(jī) 240
9.2.2 做法 241
9.2.3 示例 241
9.3 引入Null Object 243
9.3.1 動(dòng)機(jī) 244
9.3.2 做法 245
9.3.3 示例 246

第10章 聚集操作 251
10.1 將聚集操作搬移到Collecting Parameter 252
10.1.1 動(dòng)機(jī) 252
10.1.2 做法 253
10.1.3 示例 254
10.2 將聚集操作搬移到Visitor 258
10.2.1 動(dòng)機(jī) 258
10.2.2 做法 262
10.2.3 示例 266

第11章 實(shí)用重構(gòu) 273
11.1 鏈構(gòu)造函數(shù) 274
11.1.1 動(dòng)機(jī) 274
11.1.2 做法 275
11.1.3 示例 275
11.2 統(tǒng)一接口 277
11.2.1 動(dòng)機(jī) 277
11.2.2 做法 278
11.2.3 示例 278
11.3 提取參數(shù) 279
11.3.1 動(dòng)機(jī) 279
11.3.2 做法 279
11.3.3 示例 280

跋 281
參考文獻(xiàn) 283
索引 287


  本文關(guān)鍵詞:重構(gòu)與模式,由筆耕文化傳播整理發(fā)布。



本文編號(hào):225075

資料下載
論文發(fā)表

本文鏈接:http://sikaile.net/wenshubaike/mishujinen/225075.html


Copyright(c)文論論文網(wǎng)All Rights Reserved | 網(wǎng)站地圖 |

版權(quán)申明:資料由用戶07333***提供,本站僅收錄摘要或目錄,作者需要?jiǎng)h除請(qǐng)E-mail郵箱bigeng88@qq.com