外觀模式提供了乙個統一的介面,用來訪問子系統中的一群介面。外觀定義了乙個高層介面,讓子系統更容易使用。使用外觀模式時,我們建立了乙個統一的類,用來包裝子系統中乙個或多個複雜的類,客戶端可以直接通過外觀類來呼叫內部子系統中方法,從而外觀模式讓客戶和子系統之間避免了緊耦合。
下面是**:
/// 以學生選課系統為例子演示外觀模式的使用
/// 學生選課模組包括功能有:
/// 驗證選課的人數是否已滿
/// 通知使用者課程選擇成功與否
/// 客戶端**
///
private static registrationfacade facade = new registrationfacade();
private void button1_click(object sender, eventargs e)
else }}
//外觀類
public class registrationfacade
public bool registercourse(string coursename,string studentname)
return notifystu.notify(studentname); }
} #region
//相當於子系統a
public class registercouser
是否人數已滿", coursename));
return true;}}
//相當於子系統b
public class notifystudent
發生通知", studentname));
return true;
}
}#endregion
執行結果:
c 設計模式之外觀模式
外觀模式 facade pattern 結構型模式 這個外觀類為子系統提供乙個共同的對外介面,客戶 clients 物件通過乙個外觀介面讀寫子系統中各界面的資料資源。意圖 外觀模式 facade 為子系統中的一組介面提供乙個一致的介面,定義乙個高層介面,這個介面使得這一子系統更加容易使用。適用性 1...
C 設計模式之外觀
ironman之外觀 接著上篇觀察者內容的 劇情 沒看過的朋友也沒關係,篇幅之間有銜接的關係但是影響不大。需求 為 兵工廠 提供各種支援,生產了各式各樣的 ironman 因為 ironman 是智慧型的,它有乙個 總控中心 用來使用各個部件的功能,以及 其它功能的使用。總控中心 也是使用者在穿戴時...
設計模式之外觀模式
外觀模式提供了乙個統一的介面,用來訪問子系統中的一群介面。這樣可以避免客戶端和子系統之間的緊耦合。這種模式需要將一系列的子系統組合到外觀中,然後將具體的工作交給各個子系統去完成。如此一來,可以簡化介面的呼叫。其本質就是將系統與客戶端互動的地方封裝起來。這個模式,總體來說,很簡單,理解起來也不困難。依...