C设计模式-中介者

介绍

中介者模式在生活中的场景是:房东、中介、租客的关系。

各个房东、各个租客,他们之间对放租、租房有各种各样的需求,中介可以把他们的需求都收集起来,这样房东、租客就只要联系中介,就可以完成自己需求的匹配。作为租客,就不需要到处找房子,作为房东,就不需要到处贴招租信息。

我的理解是,当有多个模块,且各个模块之间有比较多的相互依赖关系时,可以用中介者模式来实现模块和模块之间的解耦。

具体到工程中的应用场景,可以是:

一个手环项目中有多个模块:通讯协议、日历、按键、运动模式识别。这几个业务模块之间有各种各样的关系,比如,按按键开始计步,计步数据按日期、时间保存,并通过通讯协议上传给手机等。

模块和模块之间的依赖关系比较多,这时候,我们可以引入一个消息总线的模块。

各个模块将自己的功能的接口方式,映射为消息总线模块的消息,消息总线统一将这些消息送达各个功能模块。如下图所示:

在这里插入图片描述

这样操作之后,各个模块不再有复杂的相互依赖关系,他们都只与消息总线发生了依赖。

中介者(消息总线),封装了模块和模块之间的交互,使原有模块的耦合变得松散。且可以独立地改变它们之间的交互。中介者模式又叫调停模式,它是迪米特法则的典型应用。

参考文章:http://c.biancheng.net/view/1393.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值