美文网首页
中心化 mediator模式

中心化 mediator模式

作者: NazgulSun | 来源:发表于2019-03-13 15:50 被阅读0次

中介者模式 mediator

在业务场景中,不同的对象可能会相互影响,相互通信。

比如存在A 和 B 对象,A 的状态变化会影响B,反之亦然,那么A 和B之间就需要通信机制

简单的方法是A和B互相引用,并公开public 的调用方法。

如果在加入C,D,多个对象之间可能两两通信,耦合关系会变得非常的复杂。

中介模式,就是用来处理这样的问题,

ABCD 都和一个 mediator对象打交道,然后mediator负责与各个对象沟通。

这种模式的特点,就是要有一个非常强大的中介者,知道所有的知识,类似于房屋买卖的中介。

在实现层面上,有几个要点。

一个是对于 mediator 接口, 需要有方法创建和添加 Collegue。

并且提供一个 接口给 Collegue调用,以便告诉自己 他们的需求,相当于留一个电话号码给买家。

对于collegue接口, 需要保留一个对medidator的引用,以便有需求的时候,进行电话骚扰。

对于mediator模式,可能我们最容易遇到的场景就是 UI编程, 点击一个组件,页面上其他的组件的行为可能就需要改变,这个时候

使用mediator模式是非常合适的。

除了mediator模式,在考虑复杂的对象间通信时候,还有 观察者模式可以考虑。

另外,为了避免对象组件的复杂通信,也可以考虑 消息队列。

而在一些分布式场景中,基本都有一个中心化的节点,比如hadoop的nameNode等作为协调者。

p2p的网路通信的复杂度远远大于 有中心节点的通信网络的复杂度,虽然中心点容易成为瓶颈。

大名鼎鼎的比特币,就是去中心化,反mediator的翘楚。但对于大多数平凡程序员的日常,mediator中心化瓶颈还不至于是棘手的问题。

相关文章

  • 中心化 mediator模式

    中介者模式 mediator 在业务场景中,不同的对象可能会相互影响,相互通信。 比如存在A 和 B 对象,A 的...

  • 组件化的几个方案对比

    组件化(一) CTMediator 设计模式:中介(Mediator)模式 + Target-Action模式 ...

  • 中介者模式

    介绍 中介者模式 (Mediator Pattern) 也称为调解者模式或调停者模式,Mediator 本身就有调...

  • astron设计模式学习手记之调停者模式

    调停者模式 图解设计模式第16章 mediator别名:mediator,中介者模式说白了,就是同事之间互相沟通成...

  • iOS开发集锦之 2017.04.26(iOS应用架构谈 组件化

    1. iOS应用架构谈 组件化方案 作者: Casa Taloyum描述: 基于Mediator模式和Targe...

  • 26 【行为型模式】中介者模式

    解决的问题   网状结构变成以中介对象为中心的星型结构 定义   中介者模式(Mediator Pattern):...

  • mediator模式

    将对象封装在类似中介的类中,对象之间的通信他们本身不用关心 mediator.h #ifndef _MEDIATO...

  • Mediator模式

    组员向仲裁者报告,仲裁者向组员下达指示,组员之间不在相互询问和相互指示。 书中这样描述仲裁者模式,这种模式也比较好...

  • 中介者模式(Mediator)

    中介者模式(Mediator) 中介者模式(Mediator)就是用一个中介对象来封装一系列的对象交互,中介者使各...

  • iOS 模块化开发调研

    casa 的方案:Mediator模式 + target-action模式,target就是class,actio...

网友评论

      本文标题:中心化 mediator模式

      本文链接:https://www.haomeiwen.com/subject/phktmqtx.html