面向對象設計要素、原則與實踐 |
面向對象思想的核心要素
|
- 封裝的本質與意義
- 封裝與信息隱藏
- 良好的封裝與對象的高內聚
- 案例分析:郵件服務
- 繼承與基于差異式編程
- 合成/聚合復用原則
- 案例分析:員工信息管理
- 多態與抽象
- 多態的實現形式
|
面向對象設計原則 |
- 單一職責原則(SRP)的要點
- 案例分析:訂單管理
- 開放封閉原則(OCP)的本質
- 案例分析:排序算法
- Liskov替換原則(LSP)對繼承的約束
- 依賴倒置原則(DIP)的本質
- 面向接口編程
- 接口隔離原則(ISP)的本質
|
創建型模式及其實踐 |
創建型模式的本質 |
|
工廠方法模式 |
- 工廠方法模式的作用與角色
- 為何需要引入工廠方法模式
- 工廠方法模式對設計原則的運用
- 案例分析:URL連接對象的創建(分析Java和.NET框架的不同設計)
- 慣例優于配置思想對工廠方法模式的改進
?
|
抽象工廠模式 |
- 抽象工廠模式的本質
- 抽象工廠模式在數據訪問層的應用
- 案例實踐:報表組件的設計(實踐如何識別對象及運用模式改善設計)
- 如何解除具體依賴及其最佳實踐
|
建造者模式 |
- 建造者模式的作用與角色
- 建造者模式如何改善設計
- 區別建造者模式與工廠方法模式
- 案例實踐:網絡請求處理程序
|
單例模式 |
|
結構型模式及其實踐 |
結構型模式的本質 |
|
適配器模式 |
- 案例分析:如何支持第三方付費服務
- 適配器模式的分類:類的適配器模式和對象的適配器模式
- 應用適配器模式的前提
- 案例分析:媒體播放器的設計
- 區別類的適配器模式和對象的適配器模式
|
合成模式 |
- 合成模式的結構與分類
- 案例分析:開發框架中合成模式的運用
- 案例分析:單元測試框架中合成模式的運用
|
裝飾器模式 |
- 裝飾器模式的本質
- 案例分析:Web Portal的設計(推導裝飾器模式,分析繼承和組合的優缺點)
- 案例分析:流對象的處理
|
代理模式 |
- 代理模式的角色和結構
- 代理模式中的設計原則
- 案例分析:虛代理的實現
|
橋接模式 |
- 橋接模式的用意與結構
- 橋接模式中的設計原則
- 案例分析:企業培訓系統的設計
- 案例分析:手機短信發送
|
行為模式及其實踐 |
行為模式的本質 |
|
策略模式 |
|
命令模式 |
- 命令模式的本質和結構
- 集合在命令模式中的運用
- 案例分析:安裝向導
- 案例分析:開源框架中命令模式的運用(分析命令模式和合成模式的結合)
- 案例分析:SDK中線程對命令模式的運用
|
模板方法模式 |
|
訪問者模式 |
- 訪問者模式應對行為的擴展
- 雙重委派的意義
- 訪問者模式和合成模式的結合
- 非循環訪問者模式
|
觀察者模式 |
- 觀察者模式的意圖與結
- 界面框架中的觀察者模式
- 觀察者模式的本質
- 觀察者模式在分層架構中的應用
|
設計模式總結、分析與案例實踐 |
設計模式的境界 |
- 初學者:拔劍四顧心茫然
- 熟練者:過尤不及
- 精通者:無招勝有招
|
設計的常見問題 |
- 理論與設計無法有效結合
- 過度運用設計模式
- 急于編碼,沒有有效的設計
|
設計模式的本質 |
- 封裝變化
- 合理運用面向對象設計思想
- 合理運用面向對象設計原則
|
設計模式的另一種分類 |
- 接口型模式
- 責任型模式
- 構造型模式
- 操作型模式
- 擴展型模式
|
設計模式設計實踐 |
- 案例分析:某管理系統(應用場景驅動設計,合理運用抽象,分辨對象的職責與協作)
- 案例分析:某支撐工具(靈活運用策略模式、橋接模式、模板方法模式、工廠方法模式)
|