设计模式-中介者模式-笔记

Medicator中介者模式

动机(Motivation)

在软件构建过程中,经常会出现多个对象相互关联交际的情况,对象之间常常会维持一种复杂的引用关系,如果遇到一些需求的更改,这种直接的引用关系将面临不断的变化。

在这中情况下,我们可使用一个"中介对象"来管理对象间的关联关系,避免相互交互的对象之间的紧耦合引用关系,从而更好地抵御变化。

模式定义:

用一个中介者对象来封装(封装变化)一系列的对象交互。中介者模式使各对象不需要显示的相互引用(编译时依赖->运行时依赖),从而使其耦合松散(管理变化),而且可以独立地改变他们之间的交互。

要点总结

将多个对象间复杂的关联关系解耦,Mediator模式将多个对象间的控制逻辑进行集中管理,变"多个对象相互关联"为"对个对象和一个中介者关联", 简化了系统的维护,抵御了可能的变化。

随着控制逻辑的复杂变化,Mediator具有对象的实现可能相当复杂。这时候可以对Mediator对象进行分解处理。

Facade模式使解耦系统间(单向)的对象关联关系;Mediator模式是解耦系统内各个对象之间(双向)的关联关系。

相关推荐
苦瓜小生2 分钟前
【黑马点评学习笔记 | 实战篇 】| 7-达人探店
redis·笔记·后端·学习
421!38 分钟前
ESP32学习笔记之UART
笔记·学习·嵌入式·esp32·通信
吐个泡泡v41 分钟前
Python 开发“设计模式”指南
python·设计模式
诸葛思颖1 小时前
【论文阅读笔记】《Bayesian Nonparametric Federated Learning of Neural Networks》
笔记
庞轩px1 小时前
面经分享1
java·笔记·面试
一个儒雅随和的男子1 小时前
复杂业务的解决之道,如何使用“中介者模式(Mediator Pattern)”解决复杂业务场景
microsoft·中介者模式
电科_银尘1 小时前
【书籍】-- 《小米创业思考》
经验分享·笔记·创业创新·学习方法
handler011 小时前
算法:Trie树(字典树)
c语言·数据结构·c++·笔记·算法·深度优先
ID_180079054731 小时前
小红书笔记详情 API 接口系列 + 标准 JSON 返回参考(完整版)
数据库·笔记·json
有味道的男人1 小时前
小红书笔记评论API接通后
笔记