設計模式對應分類及簡單介紹

建立型

1. 抽象工廠:提供能夠建立一系列相關或者相互依賴的對象,而無需指定他們具體的類
 2. 生成器:將複雜類的表示與其構造相分離,使得相同的構建過程可以得出不一樣的展現
 3. 工廠方法:由子類決定要實力阿華哪一個類,使得子類實例化的過程推遲
 4. 原型模式:用原型實例指定建立對象的類型,而且經過複製來建立新的對象
 5. 單例模式:保證一個類只有一個實例,並提供訪問他的全局訪問點

結構型

1. 適配器:將一個類的接口轉換爲用戶但願的接口,不相容的可協同工做
2. 橋接:將抽象部分和實現部分分離開來,使他們能夠獨立工做
3. 組合:樹形結構表示,總體和部分層次結構,使得對單個對象和組合對象一致性
4. 裝飾器:動態的給一個對象添加額外的職責,比派生一個子類更靈活
5. 門面:定義個高層接口,爲子系統中一組接口提供一個一直的外觀,簡化了該系統使用
6. 代理:爲其餘對象提供一種代理以控制這個對象的訪問
7. 享元:提供支持大量細粒度對象共享的有效方法

行爲型

1. 責任鏈:給多個對象處理請求的機會,減小請求的發送者和接受者之間耦合,在連接中傳遞請求,直到有對象處理這個請求。
2. 命令:將請求封裝爲一個對象,從而可用不一樣的請求對客戶進行參數化,將請求排隊或記錄請求日誌,支持可撤銷操做
3. 解釋器:定義一種語言,定義其文法,並定義一個解釋器
4. 迭代器:提供一方法來順序訪問一個聚合對象中的各個元素不須要暴露該ob內部展現
5. 調停者:用一箇中介對象來封裝一系列對象交互
6. 備忘錄:捕獲一個對象的內部狀態,並在該對象外保持這個狀態,並且還能恢復
7. 觀察者:對象之間一對多,一個對象狀態變化,依賴於他的對象都獲得通知並自動更新
8. 策略:把許多算法封裝,能夠獨立和互相替換
9. 模版方法:定義算法骨架,延遲到子類
10. 訪問者:不改變做用於某對象結構的各元素,而能夠新操做這些元素
相關文章
相關標籤/搜索