一、概览
将从以下几个方面了解外观模式
- Facade模式是什么,用在何处
- Facade模式的关键特征
- Facade模式的变体
二、简介
《设计模式》一书对Facade模式的意图叙述:
为子系统中的一组接口提供一个统一接口。Facade模式定义了一个更高层的接口,使使子系统更加容易使用。
三、特征
Facade模式提供了一组容易理解的方法,这些方法使用底层系统来实现新定义的函数。
特征 | 解释 |
---|---|
意图 | 希望简化原有系统的使用方式。需要定义自己的接口 |
问题 | 只需要使用某个复杂系统的子集,或者需要一种特殊的方式与系统交互 |
解决方案 | Facade 为原有系统的客户提供了一个新的接口 |
参与者与协作者 | 为客户提供一个简化接口,使系统更容易使用 |
效果 | Facade模式简化了对所需子系统的使用过程,但是由于Facade并不完整,因此客户可能无法使用某些功能。 |
实现 | 定义一个或多个具备所需接口的新类 |