産品特色
編輯推薦
暢銷書全新升級,第1版廣受好評,被譽為設計模式領域極具趣味、易理解且又講解極為透徹的一本書,程序員公認的3本經典設計模式著作之一
深刻解讀6大設計原則和28種設計模式的準確定義、應用方法和實踐,全方位比較各種同類模式之間的異同,詳細講解組閤使用不同模式的方法
更多精彩,點擊進入品牌店查閱>>
內容簡介
《原創精品係列:設計模式之禪(第2版)》是設計模式領域公認的3本經典著作之一,“極具趣味,容易理解,但講解又極為嚴謹和透徹”是本書的寫作風格和方法的大特點。第1版2010年齣版,暢銷至今,廣受好評,是該領域的裏程碑著作。深刻解讀6大設計原則和28種設計模式的準確定義、應用方法和佳實踐,全方位比較各種同類模式之間的異同,詳細講解將不同的模式組閤使用的方法。第2版在第1版的基礎上有兩方麵的改進,一方麵結閤讀者的意見和建議對原有內容中的瑕疵進行瞭修正和完善,另一方麵增加瞭4種新的設計模式,希望這一版能為廣大程序員們奉上一場更加完美的設計模式盛宴!
全書共38章,分為五部分:第一部分(第1~6章),以一種全新的視角對麵嚮對象程序設計的6大原則進行瞭深刻解讀,旨在讓讀者能更深刻且準確地理解這些原則,為後麵的學習打下基礎;第二部分(第7~29章)通過大量生動的案例講解和分析瞭23種常用的設計模式,並進行瞭擴展講解,通俗易懂,趣味性極強而又緊扣模式的核心;第三部分(第30~33章)對同類型和相關聯的模式進行瞭深入分析和比較,旨在闡明各種設計模式之間的差彆以及它們的理想應用場景;第四部分(第34~36章)探討瞭如何在實際開發中將各種設計模式混閤起來使用,以發揮設計模式的大效用;第五部分(第37~38章)是本書的擴展篇,首先從實現的角度對MVC框架的原理進行瞭深入分析,然後講解瞭5種新的設計模式的原理、意圖和佳實踐。本書後附有一份精美的設計模式彩圖,可以裁剪,便於參考。
作者簡介
秦小波,資深軟件開發工程師、係統分析師和架構師(獲Sun架構師認證),從事軟件開發工作10餘年,實踐經驗極其豐富。精通設計模式,對設計模式有深刻的認識和獨到見解,經過長期大量的實踐和總結,創造性地提齣新的設計模式。資深Java技術專傢,精通Spring、Struts 2、Hibernate、iBatis、jBPM等Java技術,在企業級Java應用領域積纍瞭大量經驗,對基於ESB、BPEL的服務集成技術也有深入的認識。此外,還是一位優秀的DBA,具有IBM DB2 DBA資格認證,對海量數據處理有深入的研究。著有暢銷書《編寫高質量代碼:改善Java程序的151個建議》,廣受讀者好評!
目錄
前言
第一部分 大旗不揮,誰敢衝
鋒—6大設計原則全新解讀
第1章 單一職責原則 2
1.1 我是“牛”類,我可以擔任多職嗎 2
1.2 絕殺技,打破你的傳統思維 3
1.3 我單純,所以我快樂 6
1.4 最佳實踐 7
第2章 裏氏替換原則 8
2.1 愛恨糾葛的父子關係 8
2.2 糾紛不斷,規則壓製 9
2.3 最佳實踐 18
第3章 依賴倒置原則 19
3.1 依賴倒置原則的定義 19
3.2 言而無信,你太需要契約 20
3.3 依賴的三種寫法 25
3.4 最佳實踐 26
第4章 接口隔離原則 28
4.1 接口隔離原則的定義 28
4.2 美女何其多,觀點各不同 29
4.3 保證接口的純潔性 33
4.4 最佳實踐 35
第5章 迪米特法則 36
5.1 迪米特法則的定義 36
5.2 我的知識你知道得越少越好 36
5.3 最佳實踐 43
第6章 開閉原則 44
6.1 開閉原則的定義 44
6.2 開閉原則的廬山真麵目 44
6.3 為什麼要采用開閉原則 49
6.4 如何使用開閉原則 51
6.5 最佳實踐 55
第二部分 真刀實槍—23種設計模式完美演繹
第7章 單例模式 58
7.1 我是皇帝我獨苗 58
7.2 單例模式的定義 59
7.3 單例模式的應用 60
7.3.1 單例模式的優點 60
7.3.2 單例模式的缺點 60
7.3.3 單例模式的使用場景 61
7.3.4 單例模式的注意事項 61
7.4 單例模式的擴展 62
7.5 最佳實踐 64
第8章 工廠方法模式 65
8.1 女媧造人的故事 65
8.2 工廠方法模式的定義 69
8.3 工廠方法模式的應用 70
8.3.1 工廠方法模式的優點 70
8.3.2 工廠方法模式的使用場景 71
8.4 工廠方法模式的擴展 71
8.5 最佳實踐 77
第9章 抽象工廠模式 78
9.1 女媧的失誤 78
9.2 抽象工廠模式的定義 83
9.3 抽象工廠模式的應用 86
9.3.1 抽象工廠模式的優點 86
9.3.2 抽象工廠模式的缺點 86
9.3.3 抽象工廠模式的使用場景 86
9.3.4 抽象工廠模式的注意事項 86
9.4 最佳實踐 87
第10章 模闆方法模式 88
10.1 輝煌工程—製造悍馬 88
10.2 模闆方法模式的定義 93
10.3 模闆方法模式的應用 94
10.3.1 模闆方法模式的優點 94
10.3.2 模闆方法模式的缺點 95
10.3.3 模闆方法模式的使用場景 95
10.4 模闆方法模式的擴展 95
10.5 最佳實踐 99
第11章 建造者模式 100
11.1 變化是永恒的 100
11.2 建造者模式的定義 109
11.3 建造者模式的應用 111
11.3.1 建造者模式的優點 111
11.3.2 建造者模式的使用場景 111
11.3.3 建造者模式的注意事項 111
11.4 建造者模式的擴展 111
11.5 最佳實踐 112
第12章 代理模式 113
12.1 我是遊戲至尊 113
12.2 代理模式的定義 116
12.3 代理模式的應用 118
12.3.1 代理模式的優點 118
12.3.2 代理模式的使用場景 119
12.4 代理模式的擴展 119
12.4.1 普通代理 119
12.4.2 強製代理 121
12.4.3 代理是有個性的 126
12.4.4 動態代理 128
12.5 最佳實踐 134
第13章 原型模式 135
13.1 個性化電子賬單 135
13.2 原型模式的定義 141
13.3 原型模式的應用 142
13.3.1 原型模式的優點 142
13.3.2 原型模式的使用場景 142
13.4 原型模式的注意事項 143
13.4.1 構造函數不會被執行 143
13.4.2 淺拷貝和深拷貝 144
13.4.3 clone與final兩個冤傢 146
13.5 最佳實踐 146
第14章 中介者模式 147
14.1 進銷存管理是這個樣子的嗎 147
14.2 中介者模式的定義 156
14.3 中介者模式的應用 159
14.3.1 中介者模式的優點 159
14.3.2 中介者模式的缺點 159
14.3.3 中介者模式的使用場景 159
14.4 中介者模式的實際應用 160
14.5 最佳實踐 161
第15章 命令模式 162
15.1 項目經理也難當 162
15.2 命令模式的定義 170
15.3 命令模式的應用 173
15.3.1 命令模式的優點 173
15.3.2 命令模式的缺點 173
15.3.3 命令模式的使用場景 173
15.4 命令模式的擴展 173
15.4.1 未講完的故事 173
15.4.2 反悔問題 174
15.5 最佳實踐 175
第16章 責任鏈模式 178
16.1 古代婦女的枷鎖—“三從四德” 178
16.2 責任鏈模式的定義 186
16.3 責任鏈模式的應用 189
16.3.1 責任鏈模式的優點 189
16.3.2 責任鏈模式的缺點 190
16.3.3 責任鏈模式的注意事項 190
16.4 最佳實踐 190
第17章 裝飾模式 192
17.1 罪惡的成績單 192
17.2 裝飾模式的定義 198
17.3 裝飾模式應用 201
17.3.1 裝飾模式的優點 201
17.3.2 裝飾模式的缺點 201
17.3.3 裝飾模式的使用場景 201
17.4 最佳實踐 201
第18章 策略模式 203
18.1 劉備江東娶妻,趙雲他容易嗎 203
18.2 策略模式的定義 206
18.3 策略模式的應用 208
18.3.1 策略模式的優點 208
18.3.2 策略模式的缺點 208
18.3.3 策略模式的使用場景 209
18.3.4 策略模式的注意事項 209
18.4 策略模式的擴展 209
18.5 最佳實踐 214
第19章 適配器模式 215
19.1 業務發展—上帝纔能控製 215
19.2 適配器模式的定義 221
19.3 適配器模式的應用 223
19.3.1 適配器模式的優點 223
19.3.2 適配器模式的使用場景 224
19.3.3 適配器模式的注意事項 224
19.4 適配器模式的擴展 224
19.5 最佳實踐 229
第20章 迭代器模式 230
20.1 整理項目信息—苦差事 230
20.2 迭代器模式的定義 236
20.3 迭代器模式的應用 239
20.4 最佳實踐 239
第21章 組閤模式 240
21.1 公司的人事架構是這樣的嗎 240
21.2 組閤模式的定義 253
21.3 組閤模式的應用 255
21.3.1 組閤模式的優點 255
21.3.2 組閤模式的缺點 256
21.3.3 組閤模式的使用場景 256
21.3.4 組閤模式的注意事項 256
21.4 組閤模式的擴展 256
21.4.1 真實的組閤模式 256
21.4.2 透明的組閤模式 257
21.4.3 組閤模式的遍曆 259
21.5 最佳實踐 260
第22章 觀察者模式 262
22.1 韓非子身邊的臥底是誰派來的 262
22.2 觀察者模式的定義 271
22.3 觀察者模式的應用 273
22.3.1 觀察者模式的優點 273
22.3.2 觀察者模式的缺點 274
22.3.3 觀察者模式的使用場景 274
22.3.4 觀察者模式的注意事項 274
22.4 觀察者模式的擴展 275
22.4.1 Java世界中的觀察者模式 275
22.4.2 項目中真實的觀察者模式 276
22.4.3 訂閱發布模型 277
22.5 最佳實踐 277
第23章 門麵模式 278
23.1 我要投遞信件 278
23.2 門麵模式的定義 283
23.3 門麵模式的應用 284
23.3.1 門麵模式的優點 284
23.3.2 門麵模式的缺點 285
23.3.3 門麵模式的使用場景 285
23.4 門麵模式的注意事項 285
23.4.1 一個子係統可以有多個門麵 285
23.4.2 門麵不參與子係統內的業務邏輯 286
23.5 最佳實踐 288
第24章 備忘錄模式 289
24.1 如此追女孩子,你還不樂 289
24.2 備忘錄模式的定義 294
24.3 備忘錄模式的應用 297
24.3.1 備忘錄模式的使用場景 297
24.3.2 備忘錄模式的注意事項 297
24.4 備忘錄模式的擴展 297
24.4.1 clone方式的備忘錄 297
24.4.2 多狀態的備忘錄模式 300
24.4.3 多備份的備忘錄 304
24.4.4 封裝得更好一點 305
24.5 最佳實踐 307
第25章 訪問者模式 308
25.1 員工的隱私何在 308
25.2 訪問者模式的定義 316
25.3 訪問者模式的應用 320
25.3.1 訪問者模式的優點 320
25.3.2 訪問者模式的缺點 320
25.3.3 訪問者模式的使用場景 320
25.4 訪問者模式的擴展 321
25.4.1 統計功能 321
25.4.2 多個訪問者 323
25.4.3 雙分派 326
25.5 最佳實踐 328
第26章 狀態模式 329
26.1 城市的縱嚮發展功臣—電梯 329
26.2 狀態模式的定義 341
26.3 狀態模式的應用 343
26.3.1 狀態模式的優點 343
26.3.2 狀態模式的缺點 344
26.3.3 狀態模式的使用場景 344
26.3.4 狀態模式的注意事項 344
26.4 最佳實踐 344
第27章 解釋器模式 346
27.1 四則運算你會嗎 346
27.2 解釋器模式的定義 352
27.3 解釋器模式的應用 354
27.3.1 解釋器模式的優點 354
27.3.2 解釋器模式的缺點 354
27.3.3 解釋器模式使用的場景 355
27.3.4 解釋器模式的注意事項 355
27.4 最佳實踐 355
第28章 享元模式 356
28.1 內存溢齣,司空見慣 356
28.2 享元模式的定義 361
28.3 享元模式的應用 364
28.3.1 享元模式的優點和缺點 364
28.3.2 享元模式的使用場景 364
28.4 享元模式的擴展 365
28.4.1 綫程安全的問題 365
28.4.2 性能平衡 366
28.5 最佳實踐 369
第29章 橋梁模式 371
29.1 我有一個夢想 371
29.2 橋梁模式的定義 379
29.3 橋梁模式的應用 381
29.3.1 橋梁模式的優點 381
29.3.2 橋梁模式的使用場景 382
29.3.3 橋梁模式的注意事項 382
29.4 最佳實踐 382
第三部分 誰的地盤誰做主—設計模式PK
第30章 創建類模式大PK 384
30.1 工廠方法模式VS建造者模式 384
30.1.1 按工廠方法建造超人 384
30.1.2 按建造者模式建造超人 386
30.1.3 最佳實踐 389
30.2 抽象工廠模式VS建造者模式 390
30.2.1 按抽象工廠模式生産車輛 390
30.2.2 按建造者模式生産車輛 394
30.2.3 最佳實踐 399
第31章 結構類模式大PK 400
31.1 代理模式VS裝飾模式 400
31.1.1 代理模式 400
31.1.2 裝飾模式 402
31.1.3 最佳實踐 403
31.2 裝飾模式VS適配器模式 404
31.2.1 用裝飾模式描述醜小鴨 404
31.2.2 用適配器模式實現醜小鴨 407
31.2.3 最佳實踐 410
第32章 行為類模式大PK 411
32.1 命令模式VS策略模式 411
32.1.1 策略模式實現壓縮算法 411
32.1.2 命令模式實現壓縮算法 414
32.1.3 小結 419
32.2 策略模式VS狀態模式 420
32.2.1 策略模式實現人生 420
32.2.2 狀態模式實現人生 423
32.2.3 小結 425
32.3 觀察者模式VS責任鏈模式 426
32.3.1 責任鏈模式實現DNS
解析過程 427
32.3.2 觸發鏈模式實現DNS
解析過程 432
32.3.3 小結 437
第33章 跨戰區PK 438
33.1 策略模式VS橋梁模式 438
33.1.1 策略模式實現郵件發送 439
33.1.2 橋梁模式實現郵件發送 442
33.1.3 最佳實踐 445
33.2 門麵模式VS中介者模式 446
33.2.1 中介者模式實現工資計算 446
33.2.2 門麵模式實現工資計算 451
33.2.3 最佳實踐 454
33.3 包裝模式群PK 455
33.3.1 代理模式 455
33.3.2 裝飾模式 457
33.3.3 適配器模式 459
33.3.4 橋梁模式 461
33.3.5 最佳實踐 464
第四部分 完美世界—設計模式混編
第34章 命令模式+責任鏈模式 466
34.1 搬移UNIX的命令 466
34.2 混編小結 481
第35章 工廠方法模式+策略模式 483
35.1 迷你版的交易係統 483
35.2 混編小結 493
第36章 觀察者模式+中介者模式 495
36.1 事件觸發器的開發 495
36.2 混編小結 508
第五部分 擴展篇
第37章 MVC框架 510
37.1 MVC框架的實現 510
37.1.1 MVC的係統架構 512
37.1.2 模型管理器 518
原創精品係列:設計模式之禪(第2版) 下載 mobi epub pdf txt 電子書 格式
評分
☆☆☆☆☆
好好用,不錯
評分
☆☆☆☆☆
贊。
評分
☆☆☆☆☆
物流超快,下午買的,晚上到
評分
☆☆☆☆☆
商品很不錯,我很喜歡,以後還會光顧
評分
☆☆☆☆☆
圖書多做活動,滿意,送貨快
評分
☆☆☆☆☆
同事推薦的,非常好的一本書,很少有技術書籍可以寫的這麼通俗易懂
評分
☆☆☆☆☆
京東自營的店,排版和印刷跟同事買的正版相比沒有太大區彆。但是用的紙實在是太“簡約”瞭,紙質單薄,感覺齣墨不均勻。同一種類型的字,有時候能明顯看齣來墨水不夠。
評分
☆☆☆☆☆
評分
☆☆☆☆☆
快遞速度快,物品完好