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

本文详细介绍了设计模式中的中介者模式,通过实例分析了在没有使用和使用中介者模式时的区别,最后对中介者模式进行了总结,揭示了其在减少对象间耦合中的重要作用。
摘要由CSDN通过智能技术生成

一.简介


今天来学习一下传说中的中介者模式。说到中介者,我们最容易想到的就是电话中继器,这里我们看看电话的演变过程吧。最早的电话只是两个通话的用户之间相连,这样的结构简单直接,操作最方便。但是随着使用电话的人数多了起来,为每两部电话之间架设一条线路很明显是不可能的,于是就有了电话中继器,记得以前经常看老电影里面,打电话的人要拿起电话,先打给接线员,说“给我接到XXX那”。没错,接线员就相当于中介者。在面向对象设计中,我们经常有很多类对象,对象之间需要交互,而如果对象过多,而每个对象之间都有可能交互的话,最简单的方式就是每个对象保存其他所有可能交互对象的引用,但是这样做有几个问题,第一,需要保存的内容过多,每个对象存一份,很明显是冗余,对象之间的耦合性太高,牵一发而动全身,如果新增一个类,所有之前的类都要修改。为了解决这个问题,中介者模式就应运而生了。
下面看一下中介者模式的定义以及UML类图:
中介者模式(Mediator Pattern):用一个中介对象(中介者)来封装一系列的对象交互,中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。中介者模式又称为调停者模式,它是一种对象行为型模式。
简单解释一下UML类图,我们原本的对象在图中就相当于Colleague同事类,如果没有用中介者模式,他们每个具体的Collegue都需要保存其他所有对象的引用,UML图会灰常凌乱,而通过中介者Mediator,只有中介者自己保存所有对象的引用,而每个具体的同事类只需要和中介者建立关系,就可以和所有的其他同事类对象进
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值