門面模式(也有翻譯爲外觀模式)是對象的結構模式,外部與一個子系統的通訊必須經過一個統一的門面進行。其爲子系統中的一組接口提供一個一致的界面,此模式定義了一個高層接口,這個接口使得這一子系統更加容易使用。設計模式
其結構圖以下所示(源自大話設計模式)翻譯
子系統每每由於不斷演化而變得愈來愈複雜,使用門面模式能夠使得子系統更具可複用性。Façade模式能夠提供一個簡單的默認試圖,對大多數用戶來講這個視圖已經足夠用了,而那些須要進一步繼承的用戶能夠越過Façade層直接對子系統進行繼承。設計
通常而言,子系統和其餘的子系統之間、客戶端與實現化之間存在着很大的依賴性。引入Façade模式將一個子系統與它的客戶端以及其餘的子系統分離,能夠提升子系統的獨立性和可移植性。對象
在構建一個層次化的系統時,能夠使用Façade模式定義系統中每一層的入口。若是層與層之間是相互依賴的,則能夠限定它們僅經過Façade進行通訊,從而簡化了層與層之間的依賴關係。blog