中介者模式使用一个中介对象来封装一系列的对象交互。中介者使得各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。各个对象之间相互独立,中介者对象知道如何和其他所有的对象交互,当对象之间要相互引用时,就通过访问中介者对象。有点类似于找房子时候的中介。
用MVC结构来实现中介者模式。Controller作为中介者对象,Model和View相互独立,Controller协调Model和View之间的交互。如Vdew发起增加用户请求,用Controller调用Model的增加用户的方法来实现该功能。
中介者模式的本质就是封装对象之间的交互。如果一个对象的操作会引起其他相关对象的变化,或者是某个操作需要引起其他对象的后续或连带操作,而这个对象又不希望自己来处理这些关系,那么可以使用中介者模式。
