2021年7月28日星期三

中介者模式(学习笔记)

  1. 意图

  3. 适用性

  • 一组对象以定义良好但复杂的方式进行通信,产生的相互依赖关系结构混乱且难以理解
  • 一个对象引用其他很多对象并且直接与这些对象通信,导致难以复用该对象
  • 如果为了能在不同情景下复用一些基本行为,导致你需要被迫创建大量组件子类时,可使用中介者模式(所有组件间关系都被包含在中介者中,因此你无需修改组件就能方便地新建中介者类以定义新的组件合作方式)

  4. 结构

  7. 与其他模式的关系

  • 责任链模式、命令模式、中介者模式和观察者模式用于处理请求发送者和接收者之间的不同连接方式:
    - 责任链按照顺序将请求动态传递给一系列的潜在接收者,直至其中一名接收者对请求进行处理
    - 命令在发送者和请求者之间建立单向连接
    - 中介者清除了发送者和请求者之间的直接连接,强制它们通过一个中介对象进行间接沟通
    - 观察者允许接收者动态地订阅或取消接收请求

  • 外观模式和中介者的职责类似:它们都尝试在大量紧密耦合的类中组织起合作

    - 外观为子系统中的所有对象定义了一个简单接口,但是它不提供任何新功能。子系统本身不会意识到外观的存在。子系统中的对象可以直接进行交流
    - 中介者将系统中组件的沟通行为中心化。各组件只知道中介者对象,无法直接相互交流

  • 有一种流行的中介者模式实现方式依赖于观察者。中介者对象担当发布者的角色,其他组件则作为订阅者,可以订阅中介者的事件或取消订阅。当中介者以这种方式实现时,它可能看上去与观察者非常相似

  8. 已知应用

  使用示例:中介者模式在Java 代码中最常用于帮助程序GUI组件之间的通信。在MVC模式中,控制器是中介者的同义词
  下面是核心Java程序库中该模式的一些示例:

  java.util.Timer (所......

原文转载:http://www.shaoqun.com/a/901519.html

跨境电商:https://www.ikjzd.com/

黄劲:https://www.ikjzd.com/w/2426

mav:https://www.ikjzd.com/w/2414

picitup:https://www.ikjzd.com/w/446


1.意图  3.适用性一组对象以定义良好但复杂的方式进行通信,产生的相互依赖关系结构混乱且难以理解一个对象引用其他很多对象并且直接与这些对象通信,导致难以复用该对象如果为了能在不同情景下复用一些基本行为,导致你需要被迫创建大量组件子类时,可使用中介者模式(所有组件间关系都被包含在中介者中,因此你无需修改组件就能方便地新建中介者类以定义新的组件合作方式)  4.结构  7.与其他模式的关系责任链模式
terapeak:https://www.ikjzd.com/w/556
parser:https://www.ikjzd.com/w/680
cima是什么:https://www.ikjzd.com/w/1372
云南珠江源国家森林公园旅游:http://www.30bags.com/a/427951.html
云南自驾到罗平,抓住油菜花的尾巴,没来的朋友明年再约吧:http://www.30bags.com/a/246120.html
云南自驾游最佳路线 云南自驾游攻略七日游线路:http://www.30bags.com/a/433868.html
云南自由行最新攻略:http://www.30bags.com/a/420838.html
公厕里被猛烈的进出 白丝校花下面夹得很紧:http://lady.shaoqun.com/a/247576.html
李晨谈与范冰冰睡觉的细节。内容太刺激了。范冰冰资本化的尴尬:http://lady.shaoqun.com/a/438489.html
性描写造就了《金瓶梅》,还是毁了《金瓶梅》?:http://lady.shaoqun.com/a/438490.html
虾皮shopee 开店怎么开,需要那些信息?:https://www.ikjzd.com/articles/146966
当一个男人对你有感觉的时候,他会有这五个动作:http://lady.shaoqun.com/a/438491.html

没有评论:

发表评论