设计模式学习-门面模式,代理模式,适配器,中介者
四种模式接口隔离特点突出,可归结为接口隔离模式
门面模式(Facade)
- 定义
- 为子系统中的一组接口提供一个一致的界面,Facade模式定义了一个高层接口,这个接口使得这一子系统更易使用(复用)
- 通俗概括
- 增加一个稳定的中间层,类似于在系统模块层面建立桥接,多是架构设计模式
- 模式示意图
代理模式(Proxy)
- 定义
- 为其他对象提供一种代理以控制(隔离接口)对这个对象的访问
- 通俗概括
- 为了安全,性能,分布式等考虑,加一个中间层代理真正的类去实行具体任务。
- 模式示意图
适配器(Adapter)
- 定义
- 将一个类的接口转换成客户希望的另一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作
- 通俗概括
- 添加适配层,主要对原接口进行兼容性更改。多用于迁移
- 模式示意图
中介者(Mediator)
- 定义
- 用一个中介对象来封装(封装变化)一系列的对象交互。中介者使各对象不需要显式的相互引用,从而变为松耦合,并可独立变更交互
- 通俗概括
- 对象间复杂引用关系,通过中介对象封装相关交互操作,独立松耦合
- 模式示意图
四者区别
- 门面模式指系统或模块间的交互隔离
- 代理模式由于安全,跨平台等特殊原因需要一个中间代理者
- 适配器解决的是接口兼容问题,注重迁移
- 中介者指对象间复杂的交互隔离