目錄
基本概念
**與例項
外觀模式(facade):為子系統中的一組介面提供乙個一致的介面,此模式定義了乙個高層介面,這個介面使得這一子系統更加容易使用。
增加外觀facade可以提供乙個簡單的介面,減少它們之間的依賴;
為新系統開發乙個外觀facade類,來提供設計粗糙或高度複雜的遺留**的比較清晰簡單的介面,讓新系統與facade物件互動,facade與遺留**互動所有複雜的工作。
剛開始學物件導向程式設計的時候,基本上都會預設採用這種方法,因為它完美的提現了依賴倒轉原則和迪公尺特法則的思想。
uml圖如下:
程式執行截圖如下:
原始碼如下:
head.h
#ifndef head_h
#define head_h
class subsystemone;
class subsystemtwo;
class subsystemthree;
class subsystemfour;
class facade;
class subsystemone;
class subsystemtwo;
class subsystemthree;
class subsystemfour;
#endif //head_h
head.cpp
#include "head.h"
#include #include using namespace std;
facade::facade()
facade::~facade()
void facade::methoda()
void facade::methodb()
void facade::methodc()
void subsystemone::methodone()
void subsystemtwo::methodtwo()
void subsystemthree::methodthree()
void subsystemfour::methodfour()
main.cpp
#include "head.h"
#include #include using namespace std;
int main(int *argc, int *ar**)
C 設計模式 外觀模式
為子系統中的一組介面提供乙個一致的介面 facade 外觀角色,是在客戶端直接呼叫的角色,在外觀角色中可以知道相關的 乙個或者多個 子系統的功能和責任,它將所有從客戶端發來的請求委派到相應的子系統去,傳遞給相應的子系統物件處理 subsystem 子系統角色,每乙個子系統可以不是乙個單獨的類,而是乙...
C 設計模式 外觀模式
0.c 設計模式 簡單工廠模式 1.c 設計模式 工廠方法模式 2.c 設計模式 抽象工廠模式 3.c 設計模式 單例模式 4.c 設計模式 建造者模式 5.c 設計模式 原型模式 6.c 設計模式 設配器模式 7.c 設計模式 裝飾器模式 8.c 設計模式 模式 外觀模式 facade patte...
C 設計模式 外觀模式
在軟體開發過程中,客戶端程式經常會與複雜系統的內部子系統進行耦合,從而導致客戶端程式隨著子系統的變化而變化,然而為了將複雜系統的內部子系統與客戶端之間的依賴解耦,從而就有了外觀模式,也稱作 門面 模式。下面就具體介紹下外觀模式。一 外觀 facade 模式 外觀模式提供了乙個統一的介面,用來訪問子系...