1.外观模式概述
意图:为子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。
主要解决:降低访问复杂系统的内部子系统时的复杂度,简化客户端之间的接口。
何时使用: 1、客户端不需要知道系统内部的复杂联系,整个系统只需提供一个"接待员"即可。 2、定义系统的入口。
使用场景: 1、为复杂的模块或子系统提供外界访问的模块。 2、子系统相对独立。 3、预防低水平人员带来的风险。
外观模式中有以下的角色:
- 外观角色:把多个子系统的接口整合,对外提供一个对外的统一接口
- 子系统角色:实现系统的功能,客户通过外观角色访问。
接下来引入这样一个场景,每晚当我们睡觉的时候,我们总是需要关掉电视机的电源、冰箱的电源、各种家电的电源,十分的麻烦,这个时候如果有一个总的控制装置自动帮我们打开就好了。
根据这样的思想,结合外观模式可以画出如下的UML图:
代码比较简单,就不贴出来了,对照UML图很容以编写。