外觀模式
外觀模式(Facade Pattern)隱藏系統(tǒng)的復(fù)雜性腥刹,并向客戶端提供了一個(gè)客戶端可以訪問系統(tǒng)的接口。這種類型的設(shè)計(jì)模式屬于結(jié)構(gòu)型模式仁热,它向現(xiàn)有的系統(tǒng)添加一個(gè)接口,來隱藏系統(tǒng)的復(fù)雜性手销。
這種模式涉及到一個(gè)單一的類薄疚,該類提供了客戶端請(qǐng)求的簡(jiǎn)化方法和對(duì)現(xiàn)有系統(tǒng)類方法的委托調(diào)用。
使用場(chǎng)景:
- 為復(fù)雜的模塊或子系統(tǒng)提供外界訪問的模塊麻蹋。
- 子系統(tǒng)相對(duì)獨(dú)立跛溉。
- 預(yù)防低水平人員帶來的風(fēng)險(xiǎn)。
優(yōu)點(diǎn):
- 減少系統(tǒng)相互依賴。
- 提高靈活性芳室。
- 提高了安全性专肪。
缺點(diǎn):
不符合開閉原則,如果要改東西很麻煩堪侯,繼承重寫都不合適嚎尤。
實(shí)現(xiàn)上:
某業(yè)務(wù)可能需要調(diào)用多個(gè)接口,可以定義一個(gè)外觀類伍宦,對(duì)外提供一個(gè)接口調(diào)用芽死,其內(nèi)部封裝對(duì)多個(gè)接口的調(diào)用。
或者次洼,提供多個(gè)接口收奔,分別對(duì)應(yīng)下游的多個(gè)接口。從客戶端來看滓玖,只知道一個(gè)外觀類坪哄,并不知道是調(diào)用了多個(gè)下游的接口。
注意:
外觀模式和適配器模式有一定的相似處势篡,只是出發(fā)點(diǎn)不同翩肌。適配器是從適配角度出發(fā),進(jìn)行兼容處理禁悠,轉(zhuǎn)換差異念祭;外觀模式是從提供統(tǒng)一接口出發(fā),屏蔽內(nèi)部細(xì)節(jié)碍侦。