知识卡片
中介者模式的定义与自发行为/依赖方法的区分
内容
中介者模式用一个中介对象封装一组对象间的交互,让对象不再显式相互引用,实现松耦合,是 [[蜘蛛网状耦合是引入中介者模式的信号]]的正式定义。三个角色:抽象中介者、具体中介者、 同事角色(都持有中介者引用,彼此不直接通信)。每个同事类方法分两种:自发行为——只处理 自身状态;依赖方法——转交中介者完成。发散:审查一个类时,凡内部调用了其他同事类的地方 都是潜在依赖方法,应移进中介者。
参考来源
- 位置:《设计模式之禅(第2版)》第14章《中介者模式》(源文件:_epub-src/text/part0063.html)
- 结论依据:原文给出中介者模式定义并说明三个角色,明确"每个同事类的行为分为两种:一种是同事本身的行为……这种行为叫做自发行为(Self-Method),与其他的同事类或中介者没有任何的依赖;第二种是必须依赖中介者才能完成的行为,叫做依赖方法(Dep-Method)"。
- 原始内容:用一个中介对象封装一系列的对象交互,中介者使各对象不需要显示地相互作用,从而使其耦合松散……第二种是必须依赖中介者才能完成的行为,叫做依赖方法(Dep-Method)。