外观模式 The Facade Pattern

外观模式 
     提供了一个统一的接口,用来访问子系统的一群接口。外观定义了一个高层接口,让子系统更容易使用。
 
 
类图:

设计原则:
7、最少知识原则:只和你的密友谈话
 
在设计中,不要让太多的类耦合在一起
例如:
public float getTemperature(){
     return station.getThermometer().getTemperature();//依赖了三个类
}
应该采用以下方案:
public float getTemperature(){
     return station.getTemperature();//依赖了两个类,需要向station中添加getTemperature()方法
}
 
 
装饰者、适配器、外观模式对比:
1、装饰者:将一个对象包装起来以增加新的行为和责任,但不改变接口
2、适配器:将一个对象包装起来以改变起接口
3、外观:将一群对象“包装”起来以简化其接口,将客户从一个复杂的子系统中解耦。
4、适配器、外观:都可以包装一个或多个类

(转载请注明出处 ^.^)

原文地址:https://www.cnblogs.com/windlaughing/p/2989222.html