Java 之設計模式(總述)
阿新 • • 發佈:2018-04-16
作用 觀察者 中介 備忘 外觀 觀察 面向 其他 blog
1. 面向對象設計原則
- 單一職責原則: 一個類只負責一個功能領域中的相應職責
- 開閉原則: 軟件實體應對擴展開放,而對修改關閉;
- 裏氏代換原則: 所有引用基類對象的地方能夠透明地使用其子類的對象;
- 依賴倒轉原則: 抽象不應該依賴於細節,細節應該依賴於抽象;
- 接口隔離原則: 使用多個專門的接口,而不使用單一的總接口;
- 合成復用原則: 盡量使用對象組合,而不是繼承來達到復用的目的;
- 迪米特法則: 一個軟件實體應當盡可能少地與其他實體發生相互作用;
2. 軟件模式的基礎結構包括四部分:
- 問題描述(待解決的問題是什麽)
- 前提條件(在何種環境或約束條件下使用)
- 解法(如何解決)
- 效果(有哪些優缺點)
3. 根據用途,設計模式分為:
- 創建型(描述如何創建對象) 5種
- 結構型(描述如何實現類或對象的組合) 7種
- 行為型(描述類或對象怎樣交互以及怎樣分配職責) 11種
3.1 創建型模式:
- 簡單工廠模式
- 工廠方法模式
- 抽象工廠模式
- 單例模式
- 原型模式
- 建造者模式
3.2 結構型模式:
- 適配器模式
- 橋接模式
- 組合模式
- 裝飾模式
- 外觀模式
- 享元模式
- 代理模式
3.3 行為型模式:
- 職責鏈模式
- 命令模式
- 解釋器模式
- 叠代器模式
- 中介者模式
- 備忘錄模式
- 觀察者模式
- 狀態模式
- 策略模式
- 模板方法模式
- 訪問者模式
參考資料:
- 設計模式(Java版)
Java 之設計模式(總述)