暢談設計模式?就從物件導向下手
<內容簡介> 市面上介紹設計模式的書籍非常多,它們一般僅僅列出GoF 的23 個最基本的設計模式的定義和一些簡單的範例,大多數讀者充其量只能了解它們,在使用上大打折扣。本書精心篩選出了一些我們經常在開發設計過程中使用到的模式,使用OOP 的眼光分析它們,適時結合一些流行J2EE 框架和技術,並從水平和垂直兩方面擴充讀者的思維,使讀者對這些常用的模式有一個全面深刻的認識,也希望能夠為正在使用這些框架和技術的讀者帶來幫助。 作為一本技術書籍,嚴謹是必須的,作者參考了大量資料和文獻,並在相關重要地方註明出處,做到有理有據,希望能夠從專業角度和使用者探討設計模式與物件導向的設計。嚴謹和可讀性是沒有衝突的,在開發人員之間交流,最好的方式莫過於優質程式了,本書列出了大量程式部分,在一些重要的地方使用黑體、粗體或斜體的字型,並做了詳細解釋,希望能夠?磚引玉,幫助讀者製作出更加出色的程式。另外,本書還增加了很多圖片,希望圖文並茂,使這本書更加容易閱讀。 ★目錄: 前言 第一篇 模式介紹 第1章 談物件導向和模式 1.1 什麼是物件 1.2 物件導向的好處 1.3 重用 1.4 模式簡史 1.5 什麼是模式 1.6 學習設計模式的一些常見 問題 1.7 本章關鍵字 第2章 第1個模式——模版 方法(Template Method) 模式 2.1 從回家過年說起 2.1.1 DRY(Don\'t Repeat Yourself) 2.1.2 變化+重複,如何 維護 2.2 模版方法(Template Method) 模式 2.2.1 使用繼承 2.2.2 模版方法模式 2.3 引入回檔(Callback) 2.4 總結 2.5 本章關鍵字 第二篇 建立物件 第3章 單例(Singleton)模式 3.1 最簡單的單例 3.2 進階 3.2.1 延遲建立 3.2.2 執行緒安全 3.2.3 Double-Check Locking 3.2.4 Initialization on demand holder 3.2.5 Singleton的序列化 3.3 總結 3.4 本章關鍵字 第4章 工廠方法(Factory Method) 模式 4.1 工廠方法模式 4.1.1 類別圖 4.1.2 建立資料庫連線物件 4.2 靜態工廠方法 4.3 總結 4.4 本章關鍵字 第5章 原型(Prototype)模式 5.1 原型模式 5.2 寄個快遞 5.3 實現 5.3.1 UML靜態類別圖 5.3.2 程式實現 5.4 深拷貝(Deep Copy) 5.5 總結 5.6 本章關鍵字 第6章 控制反轉(IoC) 6.1 從建立物件談起 6.2 使用工廠方法模式的問題 6.3 Inversion of Control(控制反轉) 6.3.1 IoC和DI (Dependency Injection,相依注入) 6.3.2 Service Locator(服務定位器) 6.3.3 Dependency Injection 6.4 總結 6.5 本章關鍵字 第三篇 建構複雜結構 第7章 裝飾器(Decorator)模式 7.1 記錄歷史修改 7.2 Open-Closed Principle (開放—封閉原則,OCP) 7.3 裝飾器(Decorator)模式 7.3.1 類別圖 7.3.2 實現 7.3.3 一點變化 7.3.4 如何使用 7.3.5 測試 7.4 裝飾器模式的優缺點 7.5 總結 7.6 本章關鍵字 第8章 代理(Proxy)模式 8.1 代理(Proxy)模式 8.1.1 類別圖 8.1.2 存取分散式物件 8.2 J2SE動態代理 8.2.1 類別和介面 8.2.2 呼叫原理 8.2.3 實現同步 8.2.4 總結 8.3 和裝飾器(Decorator)模式的比較 8.4 總結 8.5 本章關鍵字 第9章 轉接器(Adapter)模式 9.1 打樁 9.2 其他轉接器模式 9.2.1 類別轉接器 9.2.2 雙向轉接器 9.3 測試 9.4 和代理(Proxy)模式的 比較 9.5 總結 9.6 本章關鍵字 第10章 外觀(Facade)模式 10.1 外觀(Facade)模式 10.2 Least Knowledge Principle(最少知識原則) 10.3 懶惰的老闆請客 10.4 EJB裡的外觀模式 10.5 總結 10.6 本章關鍵字 第11章 組合(Composite)模式 11.1 組合模式概述 11.1.1 類別圖 11.1.2 使用組合(Composite) 模式 11.