設計模式之結構類模式PK

2022-05-10 23:35:42 字數 1010 閱讀 5446

結構類模式包括:

介面卡模式

橋梁模式

組合模式

裝飾模式

門面模式

享元模式

**模式

結構類模式著重於如何建立乙個軟體結構

為什麼叫結構類模式呢? 因為他們都是通過組合類或物件產生更大結構以適應更高層次的邏輯需求.

結構型模式是為解決怎樣組裝現有的類,設計他們的互動方式,從而達到實現一定的功能的目的。

首先,裝飾模式就是**模式的乙個特殊應用,兩者的共同點是都具有相同的介面,不同點是**模式著重對**過程的控制,而裝飾模式則是對類的功能進行加強或減弱,著重類的功能變化.

**模式是把當前的行為或功能委託給其他物件執行,**類負責介面限定: 是否可以呼叫真實角色,以及是否對傳送到真實角色的訊息進行變形處理,它不對被**類的功能做任何處理,保證原汁原味的呼叫. **模式使用到極致開發就是aop.

裝飾模式是在要保證介面不變的情況下加強類的功能,它保證的是被修飾的物件功能比原始物件豐富,但不做准入條件判斷和准入引數過濾,如是否可以執行類的功能等, 這不是裝飾模式關心的

裝飾模式和介面卡模式雖然差別比較大, 但是他們功能有相似的地方: 都是包裝作用,都是通過委託方式實現其功能. 不同的是:裝飾模式包裝的是自己的像地雷,隸屬於同乙個家族(相同介面或父類),介面卡模式則修飾非血緣關係類,把乙個非本家族的物件偽裝成本家族的物件.

裝飾模式和介面卡模式區別如下:

意圖不同. 裝飾模式的意圖是加強物件的功能, 而介面卡模式關注的是轉化, 它的主要意圖是兩個不同物件之間的轉化.

施與物件不同. 裝飾模式裝飾的物件必須是自己的同宗, 也就是相同的介面或父類; 介面卡模式則必須是兩個不同的物件, 因為它著重於轉換

場景不同. 裝飾模式在任何時候都可以使用, 只要是想增加類的功能; 而介面卡模式 則是乙個補救模式,一般出現在系統成熟或已經構建完畢的專案中,作為乙個緊急處理手段採用.

擴充套件性不同. 裝飾模式很容易擴充套件. 但是介面卡模式在兩個不同物件之間架起了一座溝通的橋梁, 建立容易,去掉就比較困難了,需要從系統整體考慮是否能夠撤銷.

《設計模式之禪》 結構類模式大PK

裝飾模式就是 模式的乙個特殊應用,兩者的共同點是都具有相同的介面,不同點則是 模式著重對 過程的控制,而裝飾模式則是對類的功能進行加強或減弱,它著重類的功能變化。模式是把當前的行為或功能委託給其他物件執行,類負責介面限定 是否可以呼叫真實角色,以及是否對傳送到真實角色的訊息進行變形處理,它不對被主題...

設計模式之建立類模式PK

建立類模式包括 工廠方法模式 建造者模式 抽象工廠模式 單例模式 原型模式 建立類模式能夠提供物件的建立和管理職責.其中單例模式和原型模式非常容易理解,單例模式是要保持在記憶體中只有乙個物件,原型模式是要求通過複製的方式產生乙個新的物件,這兩個不容易混淆.工廠方法模式注重的是整體物件的建立方法,而建...

設計模式之建立類模式PK

建立類模式包括 工廠方法模式 建造者模式 抽象工廠模式 單例模式 原型模式 建立類模式能夠提供物件的建立和管理職責.其中單例模式和原型模式非常容易理解,單例模式是要保持在記憶體中只有乙個物件,原型模式是要求通過複製的方式產生乙個新的物件,這兩個不容易混淆.工廠方法模式注重的是整體物件的建立方法,而建...