设计模式——中介者模式

一、引入

:国际组织与世界上各个国家之间的关系,联合国、世贸、世卫便扮演着中介者的角色
设计模式——中介者模式
设计模式——中介者模式
没有中介者–联合国,世界各国的关系便错综复杂,有了中介者,各个国家之间只需要通过与联合国联系便可以间接的与世界各国联系

二、中介者模式介绍

中介者模式:用一个中介对象来封装一系列的对象交互。中介者使各个对象不需要显式的相互引用,从而使其耦合松散,而且可以独立的改变他们之间的交互。

中介者UML类图:
设计模式——中介者模式

三、中介者模式优缺点及应用实例

中介者模式的优缺点:
**优点:**中介者模式减少了各类之间的耦合,使其可以独立的改变和复用
**缺点:**中介者需要知道所有的对象,就像联合国需要与所有的国家都建立联系,即交互的复杂性(如果没有联合国,世界各国错综复杂的交互关系)变成了中介者的复杂性(联合国需要与所有国家联系)

正因如此,中介者模式很容易在系统中应用,也很容易在系统中误用,当系统出现了“多对多”(就像中国需要与美国等多国联系,而美国又需要和中国等多国联系)交互复杂的对象群时,不要急于使用中介者模式,而要先反思系统在设计上是否合理。

**中介者模式的应用实例:如开发一个计算器的小程序,计算器的窗体便是一个中介者