4.7 《硬啃设计模式》 第24章 麻烦的多角关系 - 中介者模式(Mediator Pattern)简介

在Windows程序中,有时候界面控件之间的交互会很麻烦,如:A控件显示什么的时候,B控件要显示什么,另外C控件要不可用,同样其它控件也会有类似的复杂要求。控件与控件之间很容易形成复杂的多角关系了。
现在让你来梳理这些多角关系,你会咋办?



蜘蛛网般的多角关系是很麻烦,所有麻烦最好通过一个中间人来解决,这就是中介者模式的核心思想。

应用了中介者模式的解决方案如下:


中介者1.png 

说明:
1.每个控件不需要直接和别的控件打交道,只需要知道中介者就可以了。
2.每个控件都需要保持保持中介者的引用,而中介者不一定需要保持每个控件的引用。
3.Mediator的代码可能很复杂。

中介者模式的类图如下:

中介者2.png 


说明:
1.对象间关系复杂,可通过中介者将各对象的关联解耦,将各种复杂关系的处理逻辑,都放在中介者中。

2.写好中介者处理各Colleague关系代码,是一项挑战。




请看下一文……

 

 

作者:张传波

创新工场创业课堂(敏捷课程)讲师

软件研发管理资深顾问

CMMI首席专家

《火球——UML大战需求分析》作者

www.umlonline.org创办人


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

张传波

打赏的朋友很帅噢!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值