門面 Facade 模式

2021-08-29 19:41:28 字數 367 閱讀 5651

外部與乙個子系統的通訊必須通過乙個統一的門面(facade)物件進行,這就是門面模式。

門面模式要求乙個子系統的外部與其內部的通訊必須通過乙個統一的門面(facade)物件進行。門面模式提供乙個高層次的介面,使得子系統更易於使用。

一,結構:

門面(facade)角色:客戶端可以呼叫這個角色的方法。此角色知曉相關的(乙個或者多個)子系統的功能和責任。在正常情況下,本角色會將所有從客戶端發來的請求委派到相應的子系統去。

子系統(subsystem)角色:可以同時有乙個或者多個子系統。每乙個子系統都不是乙個單獨的類,而是乙個類的集合。每乙個子系統都可以被客戶端直接呼叫,或者被門面角色呼叫。子系統並不知道門面的存在,對於子系統而言,門面僅僅是另外乙個客戶端而已。

門面(Facade)模式

facade模式也叫外觀模式 在 設計模式 一書中他是這樣敘述的 為子系統中的一組介面提供乙個統一的介面。facade模式定義了乙個更高的介面,使子系統更加容易使用。facade模式的關鍵特徵 意圖 希望簡化原有系統的使用方法,需要定義自己的介面。問題 只需要使用某個複雜系統的子集,或者,需要以一種...

門面模式 facade

門面模式定義 為子系統中的一組介面提供了乙個一致的介面,facade模式定義了乙個高層介面,這個介面使得這一子系統更加容易使用。現代的軟體系統都是比較複雜的,設計師處理複雜系統的乙個常見方法便是將其 分而治之 把乙個系統劃分為幾個較小的子系統。如果把醫院作為乙個子系統,按照部門職能,這個系統可以劃分...

門面模式(Facade)

外部與乙個子系統的通訊必須通過乙個統一的門面 facade 物件進行,這就是門面模式。醫院的例子 用乙個例子進行說明,如果把醫院作為乙個子系統,按照部門職能,這個系統可以劃分為 門診 劃價 化驗 收費 取藥等。看病的病人要與這些部門打交道,就如同乙個子系統的客戶端與乙個子系統的各個類打交道一樣,不是...