有时,客户端需要面对来自不同类的、不同方法的组合调用,这会使得客户端与这些类产生较为严重的耦合。外观模式可以解决这一问题,他封装了一组方法,且仅提供一个与客户之间交互的切入点。
这是不使用外观模式的类图:
而使用了外观模式则:
在这里,遵循了一个设计模式的原则:最少知识原则-------“只和你的密友谈话”。(HeadFirst)
有时,客户端需要面对来自不同类的、不同方法的组合调用,这会使得客户端与这些类产生较为严重的耦合。外观模式可以解决这一问题,他封装了一组方法,且仅提供一个与客户之间交互的切入点。
这是不使用外观模式的类图:
而使用了外观模式则:
在这里,遵循了一个设计模式的原则:最少知识原则-------“只和你的密友谈话”。(HeadFirst)