介绍
- 所谓外观模式Facade, 就是将子系统的接口进行抽象, 使得客户端可以更方便去使用这些子系统, 而无需了解子系统之间的耦合关系;
- 可以实现子系统与客户之间的松耦合关系, 子系统内部的功能组件往往是紧耦合的;
- Facade将客户的请求代理给适当的子系统对象;
子系统: 实现相应的功能, 处理有facade指派的任务, 子系统是没有任何facade的信息, 即没有facade的指针, 子系统甚至是不知道有这个中间层;
将一个系统划分为若干子系统有利于降低系统的复杂性, 而子系统之间的通信与相互依赖关系达到最小;使用facade模式定义子系统中每层的入口点, 如果子系统之间是相互依赖的, 可以让他们仅通过facade进行通讯, 从而简化他们之间的依赖关系;