在软件开发系统中,客户程序经常会与复杂系统的内部子系统之间产生耦合,而导致客户程序随着子系统的变化而变化。那么如何简化客户程序与子系统之间的交互接口?如何将复杂系统的内部子系统与客户程序之间的依赖解耦?这就是要说的Façade 模式。(外部与一个子系统的通信必须通过一个统一的门面(Facade)对象进行,这就是门面模式)
2:类图

3:代码
















































4:架构方面的应用
N层系统:

例如:Duwamish

5:总结
Facade模式注重简化接口与其实现。
Adapter模式注重转换接口。
Bridge模式注重分离接口与实现。
Decorator模式注重稳定接口的前提下为对象扩展功能。