外觀模式(Facade),爲子系統中的一組接口提供一個一致的界面,定義一個高層接口,這個接口使得這一子系統更加容易使用。
優點
(1)實現了子系統與客戶端之間的松耦合關係。
(2)客戶端屏蔽了子系統組件,減少了客戶端所需處理的對象數目,並使得子系統使用起來更加容易。
適用場景
在以下情況下可以考慮使用外觀模式:
(1)設計初期階段,應該有意識的將不同層分離,層與層之間建立外觀模式。
(2) 開發階段,子系統越來越複雜,增加外觀模式提供一個簡單的調用接口。
(3) 維護一個大型遺留系統的時候,可能這個系統已經非常難以維護和擴展,但又包含非常重要的功能,爲其開發一個外觀類,以便新系統與其交互。