設計模式總結

1)單一職責原則 3
2)里氏替換原則
3)依賴倒轉原則 5
4)接口隔離原則
5)迪米特法則 11
6)開閉原則 4

創建型模式,共五種:
工廠方法模式 8
抽象工廠模式 1(簡單工廠模式) 15
單例模式 21
建造者模式 13
原型模式 9

結構型模式,共七種:
適配器模式 17
裝飾器模式 6
代理模式 7
外觀模式 12
橋接模式 22
組合模式 19
享元模式 26

行爲型模式,共十一種:
策略模式 2
模板方法模式 10
觀察者模式 14
迭代子模式 20
責任鏈模式 24
命令模式 23
備忘錄模式 18
狀態模式 16
訪問者模式 28
中介者模式 25
解釋器模式 27

其實還有兩類:
併發型模式
線程池模式

單例模式
工廠模式
觀察者模式
適配器模式
模板方法模式
策略模式
責任鏈模式
裝飾者模式

模板方法模式
簡單工廠模式
組合模式
命令模式
適配器模式
裝飾模式
觀察者模式
代理模式
策略模式
單例模式

工廠模式 工廠方法模式 單例模式 觀模式 觀察者模式 橋接模式

創建型
工廠方法模式 子類較爲複雜
抽象工廠模式(數據庫類) 要求類之間有關聯性
單例模式 資源共享、線程池
建造者模式 構建一個組裝較爲麻煩的對象時

結構型
適配器模式 主要的目的是在不修改已經存在的類的前提下,讓他們可以在新的框架下面工作
外觀模式 將外部訪問接口和內部子系統解耦合 此模式定義了一個高層的接口,這個接口使得這一子系統更加容易使用
代理模式 核心就是代理作用,主要還是對原先的類進行擴展或增加控制,比如進行權限控制
1).用於遠程訪問。
爲遠程對象創建一個本地代理,隱藏如何連接遠程對象的細節,調用這個代理就和直接調用遠程對象的接口一樣
2).用於非常耗費資源和時間的資源加載,
比如word文檔中的大圖片,大對象,創建一個虛擬代理延遲加載是一個比較好的方案,保證文檔快速打開。
3). 爲了訪問權限的控制,創建一個保護代理。
4). 智能引用代理。可以幫助計算引用數量,緩存等

裝飾模式 裝飾者模式對象自身非常穩定, 只是爲了增加新功能/增強原功能。
橋接模式 抽象與實現,用組合代替繼承 橋接模式對象自身有沿着多個維度變化的趨勢 , 本身不穩定;

行爲型
模板方法模式(常用於框架設計) 定義算法骨架,子類去實現算法 按照模板依次執行算法
觀察者模式
策略模式 每個算法封裝成共有接口的一個子類,實現算法的快速切換 不同場景使用不同算法
職責鏈模式 順序算法,不同等級有不同等級的處理權限
訪問者模式 收銀時候遇到按斤稱和按個收費時候
中介者模式 不同車之間通信時,註冊進來就可以相互通信

MVC是下面三個模式的組合
觀察者模式
組合模式
策略模式

建造者模式 :當我們現有的資源無法滿足我們的業務的時候,我們進行的一個統一的建造或者改造的一個過程,或者說是一個代碼的封裝
工廠方法
單例模式

適配器 :當你有動機修改一個已經投入生產的接口,考慮試用適配器模式
外觀模式 :將外部訪問接口和內部子系統解耦
裝飾模式 :裝飾者模式對象自身非常穩定, 只是爲了增加新功能/增強原功能。

策略模式:不同場景使用不同算法
職責鏈模式:順序算法,不同等級有不同等級的處理權限
訪問者模式:表示一個作用於某對象結構中的各元素的操作
中介者模式:用一箇中介對象來封裝一系列的對象交互。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章