詳解設計模式 外觀模式

2021-08-01 16:25:29 字數 780 閱讀 7889

外觀模式

(facade)

為子系統中的一組介面提供乙個一致的介面,

facade

模式定義了乙個高層介面,這個介面使得這一子系統更加容易使用。隱藏系統的複雜性,並向客戶端提供了乙個客戶端可以訪問系統的介面。降低訪問複雜系統的內部子系統時的複雜度。

類圖:在客戶端和複雜系統之間再加一層,將呼叫順序、依賴關係等處理好。舉個例子:我們經常用的電腦,開機其實是個非常複雜的過程,而我們只需要按開機按鈕就可以了。

模擬電腦啟動,假設電腦啟動順序:啟動

cpu,啟動記憶體,啟動硬碟,載入資料等。

1. 

public

class

cpu

6.  }

1. 

public

class

memory

6.  }

1. 

public

class

disk

6.  }

1. 

//facade

2. 

public

class

computer

13.

14.

public

void

start()

19. }

1. 

public

static

void

main

(string

args)

外觀模式優點:

適用場景:

C 設計模式 外觀模式詳解

外觀模式 要求乙個子系統與外部通訊必須通過乙個同一的系統完成,也就是把一系列的子系統封裝在乙個同一的大系統中。子系統中的所有呼叫行為都是通過大系統提供同一的介面來完成。在乙個繪圖系統中,需要繪製各種這樣的圖形,比如說是矩形 圓形 直線等。那好我們就根據以上場景搭建乙個簡單的繪製場景。首先把各種繪製的...

設計模式詳解(十一) 外觀模式

今天我們來介紹外觀模式,考慮外觀模式較為簡單且非常常見 平時開發中所處可見 就直接開門見山。外觀模式 facade pattern 又叫作門面模式,是一種通過為多個複雜的子系統提供乙個一致的介面,而使這些子系統更加容易被訪問的模式。該模式對外有乙個統一介面,外部應用程式不用關心內部子系統的具體細節,...

C 設計模式 Facade 外觀模式詳解

外觀模式的適用場景 外觀模式的優缺點 在軟體開發中,有時候為了完成一項較為複雜的功能,乙個客戶類需要和多個業務類互動,而這些需要互動的業務類經常會作為乙個整體出現,由於涉及到的模擬較多,導致使用時 較為複雜,此時,特別需要乙個類似服務員一樣的角色,由它來負責和多個業務類進行互動,而客戶類只需與該類互...