美文网首页设计模式之道设计Design
我学设计模式:外观(Facade)模式

我学设计模式:外观(Facade)模式

作者: hoxis | 来源:发表于2015-12-31 13:23 被阅读156次

定义:为子系统中的一组接口提供一个一致的界面,Facade模式定义了一个高层接口,这个接口使得这一子系统更加易用。

外观模式比较简单,两个字:封装!外观模式是为了解决类与类之间的依赖关系的,将类与类之间(比如A、B、C)的关系放在一个Facade类中,从外部看来只要调用Facade类中的方法,就可以自动调用A、B、C的功能,从而降低了类之间的耦合度。

认识外观模式:封装交互,简化调用

外观模式示意图外观模式示意图

如图所示,外观模式减少了外部与子系统内多个模块的交互,松散耦合,从而让外部可以更简单地使用子系统。一个直观的例子就是电脑,外部来看我们面对的是电脑,只要对电脑上的按钮操作即可,但是电脑内部有很多子系统,如CPU、Memory、Disk等。当我们启动或关闭电脑时,只要对封装好的Computer操作即可,而不需对每个子系统启动。

外观模式示例外观模式示例
  • 外观模式的调用顺序


    外观模式的调用顺序外观模式的调用顺序

何时使用外观模式

  • 希望为一个复杂的子系统提供一个简单的接口
  • 想让客户端和抽象类的实现部分松散耦合
  • 构建多层结构系统时,可以使用外观作为每层的入口


如果觉得有用,欢迎关注我的微信,有问题可以直接交流:

你的关注是对我最大的鼓励!你的关注是对我最大的鼓励!

相关文章

网友评论

本文标题:我学设计模式:外观(Facade)模式

本文链接:https://www.haomeiwen.com/subject/rvoihttx.html