Java設計模式及應用案例(第2版)

Java設計模式及應用案例(第2版)

作者: 金百東 劉德山
出版社: 人民郵電
出版在: 2017-11-01
ISBN-13: 9787115462589
ISBN-10: 7115462585
裝訂格式: 平裝
總頁數: 330 頁





內容描述


本書共 23 章。內容涵蓋了模式設計的六大法則:單一職責原則、里氏代換原則、開放封閉原則、依賴倒轉原則、合成/聚合復用原則、迪米特法則。介紹了Java反射技術在模式中的重要作用。介紹了23種常用模式:接口與抽象類模式,工廠方法模式、抽象工廠模式、構造者模式、橋接模式、裝飾模式、代理模式、狀態模式、觀察者模式、中介者模式等,以及這些模式的綜合運用。


目錄大綱


第1章設計模式概述1 
1.1設計模式簡介2 
1.2預備知識2 
1.2.1接口和抽像類2 
1.2.2反射4 
模式實踐練習10 
第2章單例模式11 
2.1問題的提出12 
2.2單例模式12 
2.3單例模式的實現方式12 
2.4應用示例14 
模式實踐練習20 
第3章工廠模式21 
3.1關鍵角色22 
3.2簡單工廠23 
3.2.1代碼示例23 
3.2.2代碼分析24 
3.2.3語義分析24 
3.3工廠25 
3.3.1代碼示例25 
3.3.2代碼分析26 
3.4抽象工廠27 
3.4.1代碼示例28 
3.4.2代碼分析29 
3.4.3典型模型語義分析29 
3.4.4其他情況29 
3.5應用示例32 
3.6自動選擇工廠37 
模式實踐練習38 
第4章生成器模式39 
4.1問題的提出40 
4.2生成器模式41 
4.3深入理解生成器模式44
4.4應用示例46 
模式實踐練習58 
第5章原型模式59 
5.1問題的提出60 
5.2原型模式60 
5.3原型複制具體實現方法61 
5.3.1利用構造函數方法61 
5.3.2利用Cloneable接口方法63 
5.3.3利用Serializable序列化接口方法65 
5.4應用示例67 
模式實踐練習69 
第6章責任鏈模式70 
6.1問題的提出71 
6.2責任鏈設計模式71 
6.3反射的作用73 
6.4回調技術75 
模式實踐練習79 
第7章命令模式80 
7.1問題的提出81 
7.2命令模式81 
7.3深入理解命令模式83 
7.3.1命令集管理83 
7.3.2加深命令接口定義的理解85 
7.3.3命令模式與JDK事件處理86 
7.3.4命令模式與多線程90 
7.4應用示例92 
模式實踐練習99 
第8章迭代器模式100 
8.1問題的提出101 
8.2迭代器模式103 
8.3應用示例104 
模式實踐練習109
第9章訪問者模式110 
9.1問題的提出111 
9.2訪問者模式111 
9.3深入理解訪問者模式113 
9.4應用示例119 
模式實踐練習128 
第10章中介者模式129 
10.1問題的提出130 
10.2中介者模式130 
10.3應用示例133 
模式實踐練習139 
第11章備忘錄模式140 
11.1問題的提出141 
11.2備忘錄設計模式143 
11.3應用示例146 
模式實踐練習151 
第12章觀察者模式152 
12.1問題的提出153 
12.2觀察者模式153 
12.3深入理解觀察者模式155 
12.4 JDK中的觀察者設計模式160 
12.5應用示例163 
模式實踐練習172 
第13章狀態模式173 
13.1問題的提出174 
13.2狀態模式174 
13.3深入理解狀態模式175 
13.4應用示例180 
模式實踐練習191 
第14章策略模式192 
14.1問題的提出193 
14.2策略模式193
14.3深入理解Context 195 
14.4應用示例198 
模式實踐練習202 
第15章模板方法模式203 
15.1問題的提出204 
15.2方法模板204 
15.2.1自定義方法模板204 
15.2.2 JDK方法模板206 
15.3流程模板208 
15.4應用示例210 
模式實踐練習213 
第16章解釋器模式214 
16.1問題的提出215 
16.2解釋器模式215 
16.2.1文法規則和抽象語法樹215 
16.2.2解釋器模式216 
16.3應用示例220 
模式實踐練習224 
第17章享元模式225 
17.1問題的提出226 
17.2享元模式226 
17.3系統中的享元模式232 
模式實踐練習234 
第18章適配器模式235 
18.1問題的提出236 
18.2適配器模式236 
18.2.1對象適配器236 
18.2.2類適配器238 
18.3默認適配器238 
18.4應用示例240 
模式實踐練習244
第19章組合模式246 
19.1問題的提出247 
19.2組合模式248 
19.3深入理解組合模式250 
19.3.1其他常用操作250 
19.3.2節點排序252 
19.4應用示例252 
模式實踐練習264 
第20章代理模式265 
20.1模式簡介266 
20.2虛擬代理267 
20.3遠程代理272 
20.3.1 RMI通信272 
20.3.2 RMI代理模擬275 
20.4計數代理277 
20.4.1動態代理的成因279 
20.4.2自定義動態代理279 
20.4.3 JDK動態代理282 
模式實踐練習284 
第21章橋接模式285 
21.1問題的提出286 
21.2橋接模式286 
21.3深入理解橋接模式289 
21.4應用示例292 
模式實踐練習301 
第22章裝飾器模式302 
22.1問題的提出303 
22.2裝飾器模式303 
22.3深入理解裝飾器模式305 
22.3.1具體構件角色的重要性305 
22.3.2 JDK中的裝飾器模式306
22.4應用示例309 
模式實踐練習320 
第23章外觀模式321 
23.1問題的提出322 
23.2外觀模式322 
23.3應用示例323 
模式實踐練習329 
參考文獻330


作者介紹


金百東,碩士,副教授,遼寧師範大學計算機與信息技術學院教師。
主編《Java web編程技術實用教程》、《C++STL基礎及應用》、《Java程序設計》、《Java程序設計實驗指導》、《Java設計模式深入研究》等教材。其中《C++STL基礎及應用》2014年獲第2批普通高等教育十二五國家級規劃教材。多次獲得藍橋杯全國軟件和信息技術專業人才大賽及遼寧省大學生ACM競賽優秀指導教師。研究興趣集中在物聯網信息處理、設計模式及STL應用。
在計算機應用與軟件、微型機與應用、自動化技術與應用等期刊發表論文18餘篇。




相關書籍

Design Patterns for Embedded Systems in C: An Embedded Software Engineering Toolkit (Paperback)

作者 Bruce Powel Douglass

2017-11-01

領域驅動設計精粹 (Domain-Driven Design Distilled)

作者 沃恩·弗農 (Vaughn Vernon)

2017-11-01

Making Sense of Agile Project Management: Balancing Control and Agility (Paperback)

作者 Charles G. Cobb

2017-11-01