行为型设计模式-中介者 Mediator
date
Apr 23, 2021
slug
design-pattern-mediator
status
Published
tags
设计模式
summary
type
Page
简介
通过引入一个中介者,将对象之间两两交互的情景,改为每个对象都是与中介者交互,即将网状关系改成了星状关系。缺点是中介者逻辑会很臃肿。
当系统中出现多对多的情况时,应该先考虑设计是否合理,而尽量不要直接使用中介者。
角色
- 抽象Mediator中介者
- 具体Mediator中介者
- 抽象Component
- 具体Component
类图
中介者需要了解所有Component,而且notify中要编写处理所有可能发生的情况,Mediator是一个非常臃肿的类。
![notion image](https://www.notion.so/image/https%3A%2F%2Fdeb-gmi.oss-cn-beijing.aliyuncs.com%2Fimg%2F20210409005714.png?table=block&id=91f75b71-0488-4369-8461-43ea6638be69&cache=v2)
代码
output: