外观模式(Facade)
外观模式: 提供了一个统一的接口,用来访问子系统中的一群接口。外观定义了一个高层接口,让子系统更容易使用。
或者说:将一个类或数个类的复杂的一切都隐藏在背后,只显露出一个感觉美好的外观。
外观模式创建一个接口简化而统一的类,用来包装子系统中的一个或者多个复杂的类,而暴露给客户端的是非常简单的接口,让 客户端和子系统解耦。
类图特点
- 让接口更简单
- 外观提供简化的接口,但依然可以直接使用子系统的类。
- 外观可以附加更『聪明的』功能,让子系统更方便。
- 外观不只是简化了接口,也 将客户从组件的子系统中解耦。
- 外观和适配器可以包装许多类,但是外观的意图是 简化接口,而适配器的意图是 将接口转换成不同的接口。
要点
- 需要简化并统一一个很大的接口或者一群复杂的接口时,使用外观。
- 外观将客户从一个复杂的子系统中解耦。
- 实现一个外观,需要将子系统组合进外观中,然后将工作委托给子系统执行。
- 你可以为一个子系统实现一个以上的外观。
网友评论