目 錄
第1章 設計模式介紹 1
1.1 部落神話和部落智慧 5
1.2 藝術還是科學 9
1.2.1 生搬硬套地對待模式 9
1.2.2 模式和實現語言的相關性討論 10
1.2.3 從神話到科學 12
第2章 元素模式 13
2.1 背景 14
2.2 定位、動機和方法 17
2.2.1 解析裝飾器 18
2.2.2 縱身兔穴 21
2.2.3 語境 31
2.2.4 設計空間 34
2.3 核心EDP 44
2.4 結論 45
第3章 模式實例記法 47
3.1 基本原理 47
3.2 PIN 箱 513.2.1 簡易PIN 箱 52
3.2.2 標準PIN 箱 54
3.2.3 擴展PIN 箱 58
3.2.4 堆疊PIN 箱與多重性 61
3.2.5 剝離和合并 65
3.3 結論 69
第4章 EDP的運用 71
4.1 模式的組成 71
同位素 76
4.2 改造裝飾器 81
4.3 重構 96
4.4 大局觀 108
4.5 為什么需要閱讀附錄 114
4.6 高級主題 115
4.6.1 重點文檔與培訓 115
4.6.2 指標 116
4.6.3 程序化分析 119
4.7 結論 119
第5章 EDP編目 121
創(chuàng)建對象 123
檢索 132
繼承 136
抽象接口 145
委托 151
重定向 157
集聚 165
遞歸 171
歸復方法 178
擴展方法 187
委托型集聚 193
重定向型遞歸 199
信托型委托 206
信托型重定向 215
表親型委托 222
表親型重定向 229
第6章 中間模式結構 237
實現方法 239
檢索型創(chuàng)建 243
檢索型共享 248
對象標識符 253
對象遞歸 260
第7章 GoF設計模式成分解析 269
7.1 創(chuàng)建型模式 270
7.1.1 抽象工廠 270
7.1.2 工廠方法 274
7.2 結構型模式 278
7.2.1 裝飾器 278
7.2.2 代理 282
7.3 行為型模式 284
7.3.1 職責鏈 284
7.3.2 模板方法 286
7.4 結論 291
附錄 ρ演算 293
A.1 依賴運算符 294
A.2 傳遞律和同位素 297
A.3 相似性 298
A.4 EDP 形式化 299
A.5 組合及化簡規(guī)則 303
A.6 模式實例記法和角色 306
A.7 EDP 定義 307
A.7.1 創(chuàng)建對象 307
A.7.2 檢索 308
A.7.3 繼承 310
A.7.4 抽象接口 310
A.7.5 委托 311
A.7.6 重定向 312
A.7.7 集聚 312
A.7.8 遞歸 313
A.7.9 歸復方法 313
A.7.10 擴展方法 314
A.7.11 委托型集聚 315
A.7.12 重定向型遞歸 315
A.7.13 信托型委托 316
A.7.14 信托型重定向 317
A.7.15 表親型委托 318
A.7.16 表親型重定向 319
A.8 中間模式定義 320
A.8.1 實現方法 320
A.8.2 檢索型創(chuàng)建 321
A.8.3 檢索型共享 322
A.8.4 對象標識符 323
A.8.5 對象遞歸 324
A.9 GoF 設計模式定義 325
A9.1 抽象工廠 325
A9.2 工廠方法 326
A9.3 裝飾器 328
A9.4 代理 329
A9.5 職責鏈 330
A9.6 模板方法 331
參考文獻 333