中介者模式(Mediator Pattern)
中介者模式(Mediator Pattern)是一种行为型设计模式。它通过引入一个中介者对象,来封装一系列对象之间的交互,使这些对象之间不再直接相互引用和通信,而是通过中介者进行间接通信,从而降低对象之间的耦合度,提高系统的可维护性和可扩展性。
一、基础
1. 意图
核心目的:定义一个中介对象来封装一系列对象之间的交互,使各对象不需要显式地相互引用,从而使其耦合松散,并且可以独立地改变它们之间的交互。
2. 使用场景
典型应用:
-
系统中对象之间存在复杂的网状引用关系
-
多个类之间有紧密耦合,导致难以独立修改
-
需要集中控制多个对象间的交互逻辑
-
跨系统或模块的通信协调
具体案例:
-
GUI系统中的对话框控件管理
-
聊天应用程序的服务器协调
-
航空管制系统的飞机调度
-
多玩家游戏的房间管理
3. 模式结构
- 中介者(Mediator):定义了一个接口