設計模式go語言實現 外觀模式facade

2021-08-30 15:45:58 字數 957 閱讀 4162

外觀模式(facade):為子系統中的一組介面提供乙個一致的介面,此模式定義了乙個高層介面,這個介面使得這一子系統更加容易使用。

如果定義不是很理解的話,讀者可以對照下面電腦的例子認真思考一下:

電腦整機時cpu、記憶體、硬碟等的外觀,有了這個外觀之後,啟動電腦和關閉電腦都簡化了。

uml類圖:

外觀模式主要包含兩個角色:

type power struct{}

func (p power) poweron()

func (p power) poweroff()

type mainboard struct{}

func (m mainboard) poweron()

func (m mainboard) poweroff()

type cpu struct{}

func (cpu cpu) poweron()

func (cpu cpu) poweroff()

type computer inte***ce 

type desktopcomputer struct

func (dc desktopcomputer) boot()

func (dc desktopcomputer) shutdown()

type laptop struct

func (l laptop) boot()

func (l laptop) shutdown()

func main()

設計模式 外觀模式(C 實現)

通常某乙個操作的初始化依賴於很多步驟,我們可以把此步驟進行封裝做成乙個類 通過這個類的初始化操作中 對依賴的物件進行建立,然後返回建立此型別的指標 然後在外觀類中完成這些函式的呼叫工作 適用於 為子系統中統一一套介面,讓子系統更加容易使用。include using namespace std cl...

設計模式 外觀模式 C 實現

外觀模式 引入乙個外觀角色封裝類來簡化客戶端與各個子系統之間的互動,為複雜的子系統呼叫提供乙個統一的入口,降低子系統與客戶端的耦合度,且客戶端呼叫非常方便。如果客戶端在執行乙個功能,需要首先執行a物件,然後在執行b物件,最後執行c物件。客戶端需要一次呼叫這個三個物件,如果這個功能被呼叫的頻繁的話,每...

設計模式 外觀模式

外觀模式,我的理解就是將複雜的類進行重新封裝,將簡單的介面呈現出來,降低呼叫端和實際類的耦合性。拿 大話設計模式 上邊關於 和 的例子來說。對於不入門的股民來說,交易有些過於龐大,需要學習的東西很多,如果沒整明白就進行投資,很容易賠錢的。很多剛入 的股民都賠的很慘。而買 有提出了乙個新的觀念,我們買...