門(mén)面模式:
門(mén)面模式:提供了一個(gè)統(tǒng)一的接口,用來(lái)訪問(wèn)子系統(tǒng)中的一群接口。
外觀模式定義了一個(gè)高層接口,讓子系統(tǒng)更容易使用。

image.png
優(yōu)點(diǎn)
使復(fù)雜子系統(tǒng)的接口變的簡(jiǎn)單可用,減少了客戶端對(duì)子系統(tǒng)的依賴(lài),達(dá)到了解耦的效果;
遵循了OO原則中的迪米特法則,對(duì)內(nèi)封裝具體細(xì)節(jié),對(duì)外只暴露必要的接口。
使用場(chǎng)景
1.一個(gè)復(fù)雜的模塊或子系統(tǒng)提供一個(gè)供外界訪問(wèn)的接口
2.子系統(tǒng)相對(duì)獨(dú)立 ― 外界對(duì)子系統(tǒng)的訪問(wèn)只要黑箱操作即可
比如:
mybatis的SqlSession
springmvc中的DispatchServlet