中介者模式Mediator Pattern

定义

中介者模式(Mediator Pattern)又称为调解者模式或者调停者模式。用一个中介对象封装一系列的对象交互,中介者使各对象不需要显示地相互作用,从而使其耦合松散,而且可以独立地改变它们之间的交互。
核心:通过中介者解耦系统各层次对象的直接耦合,层次对象的对外依赖通信统统交由中介者转发。
属于行为型模式。

适用场景

  1. 系统中对象之间存在复杂的引用关系,产生的相互依赖关系结构混乱且难以理解。
  2. 交互的公共行为,如果需要改变行为则可以增加新的中介者类。

中介者模式与代理模式的区别

  1. 都有中间角色牵线搭桥
  2. 代理模式主要是增强,会承担一部分职责进行操作
  3. 中介者模式是不负责任的代理模式

举例

  1. JDK Timer

优点

  1. 减少类间依赖,将多对多依赖转化成一对多,降低了类间耦合。
  2. 类间各司其职,符合迪米特法则。

缺点

  1. 中介者模式中将原本多个对象直接的相互依赖变成了中介者和多个同事类的依赖关系。当同事类越多时,中介者就会越臃肿,变得复杂且难以维护。

你可能感兴趣的:(中介者模式Mediator Pattern)