外观模式
定义
为子系统中的一组接口提供一个一致的界面,Facade模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。
外观模式的目的
不是给子系统添加新的功能接口,而是为了让外部减少与子系统内多个模块的互交,松散耦合,从而让外部能够能简单的使用子系统。
优缺点
优点
● 松散耦合
● 简单易用
● 更好的划分访问的层次
缺点
过多的或者是不太合理的Facade也容易让人迷惑。到底是调用Facade好还是直接调用模块好。
本质
封装交互,简化调用
何时选用外观模式
● 如果你希望为复杂的子系统提供一个简单接口的时候,可以考虑使用外观模式。使用外观对象对实现大部分客户需要的功能,从而简化客户的使用。
● 如果想要客户程序和抽象类的实现部分松散耦合,可以考虑使用外观模式,使用外观对象来将这个子系统与它的客户分离开来,从而提高子系统独立性和可移植性。
● 如果构建多层结构的系统,可以考虑使用外观模式,使用外观对象作为每层的入口,这样就简化层间调用,也可以松散层间之间的依赖关系。
网友评论