0.c#設計模式--簡單工廠模式
1.c#設計模式--工廠方法模式
2.c#設計模式--抽象工廠模式
3.c#設計模式--單例模式
4.c#設計模式--建造者模式
5.c#設計模式--原型模式
6.c#設計模式--設配器模式
7.c#設計模式--裝飾器模式
8.c#設計模式--**模式
外觀模式(facade pattern):
外觀模式(facade)的定義:為子系統中的一組介面提供乙個一致的介面,用來訪問子系統中的一群介面。
比如呼叫子系統1和子系統2的print方法,如果沒有外觀模式那麼你需要乙個個的呼叫,子系統如果是少還好,多了就要瘋了,這裡就可以使用外觀模式,呼叫外觀模式對外提供的方法一次性完成對子系統的層層呼叫
生活例項:比如筆記本是乙個整體,看似是一件東西,實際上只是將主機和顯示器組裝在一起而已,對外提供乙個電源按鈕,當按下電源按鈕的時候,啟動了主機和顯示器,這裡的這個電源按鈕就差不多是外觀模式。對外只提供了乙個電源按鈕。
外觀模式組成:
facade:負責子系統的的封裝呼叫
subsystem classes:具體的子系統,實現由外觀模式facade物件來呼叫的具體任務
///子系統1
3///
4public
class
subsystem1
510 }
1///2
///子系統2
3///
4public
class
subsystem2
513 }
1///2
///外觀模式對外介面類
3///
4public
class
facade514
15public
void
print()
1620 }
1///2
///客戶端測試類
生活例項:比如筆記本是乙個整體,看似是一件東西,實際上只是將主機和顯示器組裝在一起而已,對外提供乙個電源按鈕,當按下電源按鈕的時候,啟動了主機和顯示器,這裡的這個電源按鈕就差不多是外觀模式。對外只提供了乙個電源按鈕。
假設筆記本是由來個子系統:顯示器和主機組成
當按下電源按鈕,開啟主機和顯示器
///筆記本顯示器
3///
4public
class
pc_monitor510
public
void
close()
1114 }
1///2
///筆記本主機
3///
4public
class
pc_host510
public
void
close()
1114 }
1///2
///筆記本對外介面類
C 設計模式 外觀模式
目錄 基本概念 與例項 外觀模式 facade 為子系統中的一組介面提供乙個一致的介面,此模式定義了乙個高層介面,這個介面使得這一子系統更加容易使用。增加外觀facade可以提供乙個簡單的介面,減少它們之間的依賴 為新系統開發乙個外觀facade類,來提供設計粗糙或高度複雜的遺留 的比較清晰簡單的介...
C 設計模式 外觀模式
為子系統中的一組介面提供乙個一致的介面 facade 外觀角色,是在客戶端直接呼叫的角色,在外觀角色中可以知道相關的 乙個或者多個 子系統的功能和責任,它將所有從客戶端發來的請求委派到相應的子系統去,傳遞給相應的子系統物件處理 subsystem 子系統角色,每乙個子系統可以不是乙個單獨的類,而是乙...
C 設計模式 外觀模式
在軟體開發過程中,客戶端程式經常會與複雜系統的內部子系統進行耦合,從而導致客戶端程式隨著子系統的變化而變化,然而為了將複雜系統的內部子系統與客戶端之間的依賴解耦,從而就有了外觀模式,也稱作 門面 模式。下面就具體介紹下外觀模式。一 外觀 facade 模式 外觀模式提供了乙個統一的介面,用來訪問子系...