<rt id="qlaea"><optgroup id="qlaea"><button id="qlaea"></button></optgroup></rt>
    <rp id="qlaea"><meter id="qlaea"></meter></rp><strong id="qlaea"><span id="qlaea"></span></strong>
      <rp id="qlaea"></rp>
      1. <source id="qlaea"><nav id="qlaea"><strike id="qlaea"></strike></nav></source>

        計算機書籍控

        重構與模式(修訂版)

           講述重構與設計模式兩大熱門技術,將兩者有機結合,極具實戰價值,業界專家學習和教授重構與模式親身經歷的結晶,《設計模式》作者Erich Gamma、Ralph Johnson和《重構》作者Martin Fowler聯合推薦。
        

        目錄

        
        第1章 本書的寫作緣由 1
        1.1 過度設計 1
        1.2 模式萬靈丹 2
        1.3 設計不足 2
        1.4 測試驅動開發和持續重構 3
        1.5 重構與模式 5
        1.6 演進式設計 6
        第2章 重構 7
        2.1 何謂重構 7
        2.2 重構的動機 8
        2.3 眾目睽睽 9
        2.4 可讀性好的代碼 10
        2.5 保持清晰 11
        2.6 循序漸進 11
        2.7 設計欠賬 12
        2.8 演變出新的架構 13
        2.9 復合重構與測試驅動的重構 13
        2.10 復合重構的優點 15
        2.11 重構工具 15
        第3章 模式 17
        3.1 何謂模式 17
        3.2 模式癡迷 18
        3.3 實現模式的方式不止一種 20
        3.4 通過重構實現、趨向和去除模式 22
        3.5 模式是否會使代碼更加復雜 24
        3.6 模式知識 25
        3.7 使用模式的預先設計 26
        第4章 代碼壞味 28
        4.1 重復代碼(DuplicatedCode) 30
        4.2 過長函數(LongMethod) 30
        4.3 條件邏輯太復雜(ConditionalComplexity) 31
        4.4 基本類型偏執(PrimitiveObsession) 32
        4.5 不恰當的暴露(IndecentExposure) 32
        4.6 解決方案蔓延(SolutionSprawl) 33
        4.7 異曲同工的類(AlternativeClasseswithDifferentInterfaces) 33
        4.8 冗贅類(LazyClass) 33
        4.9 過大的類(LargeClass) 33
        4.10 分支語句(SwitchStatement) 34
        4.11 組合爆炸(CombinatorialExplosion) 34
        4.12 怪異解決方案(OddballSolution) 34
        第5章 模式導向的重構目錄 36
        5.1 重構的格式 36
        5.2 本目錄中引用的項目 37
        5.2.1 XMLBuilder 38
        5.2.2 HTMLParser 38
        5.2.3 貸款風險計算程序 39
        5.3 起點 39
        5.4 學習順序 39
        第6章 創建 41
        6.1 用CreationMethod替換構造函數 43
        6.1.1 動機 43
        6.1.2 做法 45
        6.1.3 示例 45
        6.1.4 變體 49
        6.2 將創建知識搬移到Factory 51
        6.2.1 動機 51
        6.2.2 做法 54
        6.2.3 示例 55
        6.3 用Factory封裝類 60
        6.3.1 動機 60
        6.3.2 做法 61
        6.3.3 示例 62
        6.3.4 變體 65
        6.4 用FactoryMethod引入多態創建 67
        6.4.1 動機 67
        6.4.2 做法 68
        6.4.3 示例 70
        6.5 用Builder封裝Composite 74
        6.5.1 做法 76
        6.5.2 示例 77
        6.5.3 變體 87
        6.6 內聯Singleton 90
        6.6.1 動機 90
        6.6.2 做法 92
        6.6.3 示例 93
        第7章 簡化 96
        7.1 組合方法 97
        7.1.1 動機 97
        7.1.2 做法 99
        7.1.3 示例 99
        7.2 用Strategy替換條件邏輯 102
        7.2.1 動機 102
        7.2.2 做法 104
        7.2.3 示例 105
        7.3 將裝飾功能搬移到Decorator 115
        7.3.1 動機 115
        7.3.2 做法 118
        7.3.3 示例 119
        7.4 用State替換狀態改變條件語句 133
        7.4.1 動機 133
        7.4.2 做法 134
        7.4.3 示例 135
        7.5 用Composite替換隱含樹 143
        7.5.1 動機 143
        7.5.2 做法 146
        7.5.3 示例 147
        7.6 用Command替換條件調度程序 155
        7.6.1 動機 155
        7.6.2 做法 157
        7.6.3 示例 158
        第8章 泛化 164
        8.1 形成TemplateMethod 165
        8.1.1 動機 166
        8.1.2 做法 167
        8.1.3 示例 167
        8.2 提取Composite 172
        8.2.1 動機 172
        8.2.2 做法 173
        8.2.3 示例 174
        8.3 用Composite替換一多之分 180
        8.3.1 動機 180
        8.3.2 做法 182
        8.3.3 示例 183
        8.4 用Observer替換硬編碼的通知 190
        8.4.1 動機 190
        8.4.2 做法 191
        8.4.3 示例 192
        8.5 通過Adapter統一接口 199
        8.5.1 動機 199
        8.5.2 做法 200
        8.5.3 示例 201
        8.6 提取Adapter 208
        8.6.1 動機 208
        8.6.2 做法 210
        8.6.3 示例 210
        8.6.4 變體 216
        8.7 用Interpreter替換隱式語言 217
        8.7.1 動機 217
        8.7.2 做法 219
        8.7.3 示例 220
        第9章 保護 230
        9.1 用類替換類型代碼 231
        9.1.1 動機 231
        9.1.2 做法 233
        9.1.3 示例 234
        9.2 用Singleton限制實例化 240
        9.2.1 動機 240
        9.2.2 做法 241
        9.2.3 示例 241
        9.3 引入NullObject 244
        9.3.1 動機 244
        9.3.2 做法 246
        9.3.3 示例 247
        第10章 聚集操作 252
        10.1 將聚集操作搬移到CollectingParameter 253
        10.1.1 動機 253
        10.1.2 做法 254
        10.1.3 示例 255
        10.2 將聚集操作搬移到Visitor 259
        10.2.1 動機 259
        10.2.2 做法 263
        10.2.3 示例 267
        第11章 實用重構 274
        11.1 鏈構造函數 275
        11.1.1 動機 275
        11.1.2 做法 276
        11.1.3 示例 276
        11.2 統一接口 278
        11.2.1 動機 278
        11.2.2 做法 279
        11.2.3 示例 279
        11.3 提取參數 280
        11.3.1 動機 280
        11.3.2 做法 280
        11.3.3 示例 281
        跋 282
        參考文獻 283
        索引 286
        

        書籍下載

        尊重版權,請購買正版書籍

        正版書籍

        重構與模式(修訂版)

        163A官方彩票导航网 www.deeblick.com:玉龙| www.im-mould.com:忻城县| www.bikersforbeth.com:永平县| www.upgamez.com:观塘区| www.g9892.com:岫岩| www.insect-museum.com:同江市| www.dongda-wood.com:崇义县| www.glviagragtr.com:南安市| www.spicythaievans.com:巩义市| www.bluefairyus.com:连江县| www.junchidt.com:临江市| www.wwwhg9693.com:前郭尔| www.sufeautolights.com:大足县| www.ku6s.com:灵石县| www.mwambu.com:西平县| www.attitude-digital.com:吉木乃县| www.jinlanwanmuye.com:仁怀市| www.uuxer.com:西畴县| www.xggtw.cn:奎屯市| www.schmitzfinefood.com:饶平县| www.weekdigital.com:廊坊市| www.bigbanganimation.com:虹口区| www.findnewyorkclubs.com:潢川县| www.022tjhj.com:赣州市| www.bluedragonservices.com:蓬溪县| www.th336.com:宜黄县| www.blueknightspavi.com:从江县| www.fundacaoaristidesdesousamendes.com:沿河| www.rqjkw.cn:上思县| www.cinematocinema.com:封丘县| www.headsickpinups.com:北宁市| www.d2i6.com:太白县| www.cz-xhw.com:保康县| www.izhuoji.net:和硕县| www.patenaude-trempe.com:许昌县| www.dollardement.com:平安县| www.wc915.com:红桥区| www.web3key.com:利辛县| www.happydogvideo.com:贞丰县| www.bestincellular.com:定西市| www.zhongshanfapii.com:浦北县| www.denimrecords.com:隆回县| www.jbenet.com:高密市| www.moshiba.com:文山县| www.hlmqw.cn:赫章县| www.rbstt.com:乃东县| www.alphaaidtraining.com:绿春县| www.fifth-wheels.com:攀枝花市| www.davisdeyoe.com:天峻县| www.crucerocapitalesbalticas.com:察哈| www.judaicaboutique.com:襄城县| www.bildungerziehung.org:肥城市| www.bestbridalevent.com:保定市| www.apartment-gdansk.com:博白县| www.patenaude-trempe.com:威宁| www.bwbuffaloridgeinn.com:福州市| www.appliancechina.com:江达县| www.pa-secret.com:额敏县| www.chenxuan88.com:旅游| www.tongyufu.com:佛教| www.zybolimian888.com:丰县| www.ereglielitogrencievi.com:大埔县| www.88888888666666.cn:横山县| www.sqyztzzxyxgs.com:阿克| www.044m.com:肇庆市| www.bcsdi.com:杨浦区| www.alinadeemamin.com:鹿泉市| www.tiapark.com:昌都县| www.hg10456.com:博兴县| www.heixiule.com:灵丘县| www.7088t.com:南华县| www.qhzxz.com:白山市| www.wwwr26006.com:高尔夫| www.kenh17.net:云霄县| www.fromussr.com:崇左市| www.cp7892.com:临漳县| www.cillianmurphy.net:汝城县| www.shunda-steel.com:米脂县| www.eguaji.com:屯留县| www.ninareviews.com:临海市| www.tfswbg.com:西华县| www.killdevilhillbrooklyn.com:玉树县| www.gztaiji.cn:澄迈县| www.dcgrill18st.com:白玉县|