首页/开发/代码质量与评审速查/中介者模式 Mediator(行为型)
设计原则与模式62 条

中介者模式 Mediator(行为型)

把多对多的对象互引用收敛为一对多的中央协调:同事对象只与中介者通信,交互规则集中;中介者负担过重时再拆分领域服务。

意图收敛网状交互为星形
应用UI 控件联动、对话框、消息路由
风险中介者变成上帝对象

形态示意

形态示意
// 之前:A↔B↔C 两两互知,N² 依赖
// 之后:A→Mediator→B/C,依赖线性化
class DialogMediator {
    void onInputChanged(Input src) { ... }
}

易错点

  • 中介者堆满业务分支:上帝对象化
  • 为少量交互引入中介者:多一层间接没有收益

数据来源与参考

  • 《设计模式》(GoF)· Mediator
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌