易學設計模式

易學設計模式

易學設計模式,是人民郵電出版社出版的圖書。

基本信息

內容介紹

《易學設計模式》是作者在多年項目開發過程中的經驗總結,通過豐富的實例由淺入深、循序漸進地介紹了設計模式的基本原理、核心思想和使用時機,從而幫助軟體設計人員快速掌握設計模式的使用方法。

全書共分27章。第1章簡要介紹了設計模式的歷史、分類,以及如何學習設計模式和《易學設計模式》學習設計模式的路線圖。第2章對UML語言和UML工具進行了簡要介紹,使讀者能夠在後面的章節中建立一個交流的平台。第3章~第8章對創建型設計模式進行了講解。第9章~第15章對結構型設計模式進行了講解。第16章~第26章對行為型設計模式進行了講解。第27章著重講解了面向對象的設計原則、Java中接口和抽象類的區別,並對設計模式進行了綜合的對比,以使讀者能夠更全面地了解設計模式。

《易學設計模式》既有理論又有實踐,而且在實踐中既有對設計人員在日常企業套用開發中遇到的實際問題的講解,又有對一些公認設計比較好的開源軟體的研究,比如對JUnit、Log4j、Spring、Hibernate等源碼進行分析,目的只有一個,就是讓讀者通過對《易學設計模式》的學習,最終能夠熟練地將設計模式套用到設計中,從而幫助設計人員更好地進行設計。

《易學設計模式》適用於軟體設計人員閱讀,尤其適合想學習設計模式而又不得其法的開發人員閱讀,同時也可用作高校相關專業師生和社會培訓班的教材。

作者簡介

郭志學,系統分析師,從事了6年的企業級ERP套用開發和ERP基礎架構設計與研發工作,目前任東冉科技首席架構師,一直致力於J2EE的推廣和普及,在企業中還承擔著新進員工的技術培訓工作。

編輯推薦

不會模式就不算真正的編程高手;23種設計模式,23個成長的故事;對話中輕鬆掌握設計模式的真諦。

目錄

第1篇 設計模式基礎

第1章 欲速則不達:了解設計模式 1

1.1 小鞏的疑惑 1

1.2 從歷史開始 3

1.3 設計模式的分類 4

1.4 如何學習設計模式 5

1.5 本書的學習線路圖 6

1.6 學習設計模式的資源 6

第2章 磨刀不誤砍柴工:UML語言概述 7

2.1 UML語言的歷史 7

2.2 UML語言簡介 7

2.3 使用ROSE工具 12

2.4 使用Togther 16

2.5 使用Visio 21

第2篇 創建型模式詳解

第3章 術業有專攻:簡單工廠模式(SimpleFactory) 23

3.1 先談創建模式的分類 23

3.2 從動物園說起 24

3.3簡單工廠模式簡介 27

3.4 簡單工廠模式的實際套用 28

3.5 簡單工廠模式的優缺點 29

第4章 精益求精:工廠方法模式(FactoryMethod) 30

4.1 為什麼要使用工廠方法模式 30

4.2 再談動物園管理系統的設計 31

4.3 工廠方法模式簡介 34

4.4 回顧簡單工廠模式下的薪資程式設計 36

4.5 用工廠方法模式實現薪資程式的設計 37

4.6 工廠方法模式的優缺點 38

第5章 再接再厲:抽象工廠模式(AbstractFactory) 39

5.1 為什麼要使用抽象工廠模式 39

5.2 再談動物園管理系統的設計 40

5.3 抽象工廠模式簡介 45

5.4 回顧工廠方法模式下的薪資程式設計 47

5.5 用抽象工廠模式實現薪資程式的設計 48

5.6 抽象工廠模式的優缺點 51

第6章 孜孜不倦:創建者模式(Builder) 52

6.1 為什麼要使用創建者模式 52

6.2 從機車的組裝談起 53

6.3 創建者模式簡介 57

6.4 回顧抽象工廠模式下的薪資程式設計 58

6.5 用創建者模式實現薪資程式的設計 60

6.6 創建者模式的優缺點 60

第7章 照貓畫虎:原型模式(Prototype) 61

7.1 為什麼要使用原型模式 61

7.2 從配鑰匙談起 61

7.3 原型模式的簡介 63

7.4 Java中原型模式的實際套用 64

7.5 原型模式的優缺點 68

第8章 獨一無二:單例模式(Singleton) 69

8.1 為什麼要使用單例模式 69

8.2 從系統日誌的記錄談起 69

8.3 單例模式簡介 73

8.4 單例模式在Log4j中的套用 74

8.5 單例模式的優缺點 78

第3篇 結構型模式詳解

第9章 一目了然:外觀模式(Facade) 79

9.1 從系統間的銜接談起 79

9.2 外觀模式簡介 79

9.3 用外觀模式實現持久層框架的設計 81

9.4 外觀模式的優缺點 104

第10章 改頭換面:適配器模式(Adapter) 105

10.1 為什麼要使用適配器模式 105

10.2 再談系統間的銜接 105

10.3 適配器模式簡介 107

10.4 適配器模式在Spring中的實際套用 108

10.5 適配器模式在Java的I/O中的實際套用 112

10.6 適配器模式的優缺點 117

第11章 越俎代庖:代理模式(Proxy) 118

11.1 為什麼要使用代理模式 118

11.2 從如何記錄系統日誌談起 118

11.3 代理模式簡介 121

11.4 代理模式在Spring的AOP中的實際套用 122

11.5 代理模式在Hibernate的延遲載入中的實際套用 130

11.6 代理模式的優缺點 148

11.7 小結 148

第12章 真人不露相:裝飾模式(decorator) 149

12.1 為什麼要使用裝飾模式——從手機彩鈴談起 149

12.2 裝飾模式簡介 153

12.3 裝飾模式在Java的I/O中的實際套用 155

12.4 裝飾模式在JUnit中的實際套用 167

12.5 裝飾模式的優缺點 170

12.6 小結 170

第13章 遊刃有餘:橋模式(Bridge) 171

13.1 為什麼要使用橋模式 171

13.2 從汽車製造談起 173

13.3 橋模式簡介 177

13.4 JDBC中橋模式的實際套用 178

13.5 橋模式的優缺點 196

13.6 小結 196

第14章 如法炮製:組合模式(Composite) 197

14.1 為什麼要使用組合模式 197

14.2 從企業組織機構的設計談起 198

14.3 組合模式簡介 201

14.4 組合模式在算術運算中的實際套用 202

14.5 組合模式在JUnit中的實際套用 205

14.6 組合模式的優缺點 213

14.7 小結 214

第15章 源源不斷:享元模式(flyweight) 215

15.1 為什麼要使用享元模式——從文字編輯器談起 215

15.2 享元模式簡介 220

15.3 用享元模式實現資料庫連線池的設計 221

15.4 享元模式的優缺點 227

15.5 小結 227

第4篇 行為型模式詳解

第16章 按部就班:模板方法模式(TemplateMethod) 229

16.1 為什麼要使用模板方法模式 229

16.2 再談薪資程式的設計 232

16.3 模板方法模式簡介 234

16.4 模板方法模式在Spring的JdbcTemplate中的實際套用 235

16.5 模板方法模式在Spring的HibernateTemplate中的實際套用 249

16.6 模板方法模式的優缺點 264

16.7 小結 264

第17章 風吹草動:觀察者模式(Observer) 265

17.1 為什麼要使用觀察者模式 265

17.2 從股票系統的設計談起 267

17.3 觀察者模式簡介 270

17.4 觀察者模式在Java中的實際套用 272

17.5 觀察者模式在JUnit中的實際套用 275

17.6 觀察者模式的優缺點 281

17.7 小結 281

第18章 變化多端:狀態模式(State) 282

18.1 為什麼要使用狀態模式 282

18.2 從公文系統的設計談起 283

18.3 狀態模式簡介 286

18.4 使用狀態模式來實現QQ的狀態 287

18.5 狀態模式的優缺點 289

18.6 小結 289

第19章 明修棧道,暗度陳倉:策略模式(Strategy) 290

19.1 為什麼要使用策略模式 290

19.2 再談薪資系統的設計 295

19.3 策略模式簡介 299

19.4 策略模式的優缺點 300

19.5 小結 300

第20章 循序漸進:職責鏈模式(ChainofResponsibility) 301

20.1 為什麼要使用職責鏈模式 301

20.2 從醫院看病談起 302

20.3 職責鏈模式簡介 305

20.4 用職責鏈模式實現財務借支審批系統 306

20.5 職責鏈模式的優缺點 309

20.6 小結 310

第21章 獨具匠心:命令模式(Command) 311

21.1 為什麼要使用命令模式 311

21.2 從觀看NBA比賽談起 313

21.3 命令模式簡介 315

21.4 命令模式在MVC框架中的具體套用 317

21.5 命令模式在JUnit中的實際套用 328

21.6 命令模式的優缺點 334

21.7 小結 334

第22章 步調一致:訪問者模式(Visitor) 335

22.1 為什麼要使用訪問者模式 335

22.2 從超市購物談起 338

22.3 訪問者模式簡介 342

22.4 訪問者模式的優缺點 343

22.5 小結 343

第23章 左右逢源:調停者模式(mediator) 344

23.1 為什麼要使用調停者模式 344

23.2 從MSN聊天談起 345

23.3 調停者模式簡介 348

23.4 調停者模式在交通紅綠燈中的具體套用 349

23.5 調停者模式的優缺點 352

23.6 小結 352

第24章 白紙黑字:備忘錄模式(Memento) 353

24.1 為什麼要使用備忘錄模式 353

24.2 從會議紀要談起 353

24.3 備忘錄模式簡介 355

24.4 備忘錄模式的優缺點 356

24.5 小結 356

第25章 周而復始:疊代器模式(Iterator) 357

25.1 為什麼要使用疊代器模式 357

25.2 從Java的疊代器談起 357

25.3 疊代器模式簡介 358

25.4 疊代器模式在Java中的具體套用 360

25.5 疊代器模式的優缺點 382

25.6 小結 382

第26章 望文生義:解釋器模式(Interpreter) 383

26.1 從文字翻譯談起 383

26.2 解釋器模式簡介 385

26.3 解釋器模式的優缺點 386

26.4 小結 386

第5篇 設計模式的綜合套用

第27章 無招勝有招:如何在設計中套用設計模式 387

27.1 面向對象的設計原則 387

27.2 Java中接口和抽象類的區別 389

27.3 綜合對比各個設計模式的思想 394

27.4 不要過度使用設計模式 396

27.5 小結 396

……

相關詞條

相關搜尋

熱門詞條

聯絡我們