10.2 Least Knowledge Principle(最少知识原则)

    外观模式用到了一条非常有用的设计原则:最少知识原则(Least Knowledge Principle),也称为迪米特原则(Law of Demeter)。

    Only talk to your immediate friends, don't talk to strangers.

    只和你的朋友说话,不要和陌生人说话。

    如果你的应用有很多类,并且它们有复杂的依赖关系,那么,你的应用将很难维护和扩展,因为对其中一处的改动,会影响很多使用者。迪米特原则让我们减少和其他类的依赖关系,这样,一处改动只影响很小的范围,降低了风险。

    在外观模式里,我们添加了Facade类,高层次的类和Facade类直接打交道,不和低层次的类直接交互,这样,低层次类的变化不会影响高层次的类,从而降低了客户类和子系统类之间的耦合度。