一 迪尼米亚法则
一个人只和他非常熟悉的朋友打交道,不和陌生人打交道。
朋友圈的确定:
1。对象本身。
2.以参数形式传入该对象方法的对象。
3.该对象实例变量所引用的对象。
4.如果该对象实例变量包含一个集合,那么集合中的对象也是朋友。
优点:降低了系统的耦合度;
缺点:产生了大量用于转发的方法,方法调用性能降低。可以利用依赖倒转原则注入一个对象,来解决。
二 调停者模式
Mediator(调停者角色)
ConcreteMediator(具体调停者角色)
Colleague(同事角色)
Colleague1(具体同事角色)
优点:同事之间的合作都是通过调停者进行协调,从而表现出系统的行为。增加了同事类的扩展性。
确定:在商业业务逻辑中,同事之间代码的协调都是通过调停者进行的,增加了同事类的扩张性
缺点:调停者模式增加了调停者的复杂性,增强了同事类的可扩展性。