設計模式系列之八外觀模式

2021-07-25 11:02:39 字數 1085 閱讀 1259

外觀模式:提供了乙個統一的介面,用來訪問子系統的一群介面。外觀定義了乙個高層介面,讓子系統更容易使用。

下面通過乙個圖來說明外觀模式的使用,此圖來自於《head first設計模式》一書。

從上圖中可以看到,通過乙個統一的facade來呼叫複雜的子系統的類。

按我的理解,外觀模式實際上就是抽取一些公共的業務邏輯封裝起來,以統一的方法來呼叫。使**結構更加清晰,易於維護,避免流水**。

舉乙個簡單的例子,下班回家三件事:開門、開燈、開電視。上班出門要幹三件事:關電視、關燈、關門。

public

class

door

//關門

public

void

close()

}

public

class

light

//關燈

public

void

off()

}

public

class

tv //關電視

public

void

off()

}

public

class

testold

}

//外觀模式的實現

public

class

facade

//封裝回家的業務邏輯

public

void

gohome()

//封裝出門的業務邏輯

public

void

goout()

}

public

class

testnew

}

設計模式(八)外觀模式

碼農a 我在做一件大事情,步驟是這樣的 買菜,洗菜,切好,烹飪,放調料。碼農b stop,stop,你直接說你要炒菜不就完了嗎。為了提高 利用率,我們一般會把功能封裝成乙個乙個方法,可是當要完成乙個功能時,我們需要呼叫很多個方法時,我們可以在 中乙個乙個方法地挨著呼叫,我們也可以在寫乙個方法來專門封...

設計模式(八)外觀模式

外觀模式介紹 當我們開發android的時候,無論是做sdk還是封裝api,我們大多都會用到外觀模式,它通過乙個外觀類使得整個系統的結構只有乙個統一的高層介面,這樣能降低使用者的使用成本。外觀模式定義 為系統中的一組介面提供乙個一致的介面,此模式定義了乙個高層介面,這個介面使得子系統更加容易使用。外...

設計模式(八) 外觀模式

外觀模式 facade pattern 隱藏系統的複雜性,並向客戶端提供了乙個客戶端可以訪問系統的介面。這種型別的設計模式屬於結構型模式,它向現有的系統新增乙個介面,來隱藏系統的複雜性。這種模式涉及到乙個單一的類,該類提供了客戶端請求的簡化方法和對現有系統類方法的委託呼叫。一般在做模組設計時,都會有...