定义:为子系统中的一组接口提供一个一致的界面,Facade模式定义了一个高层接口,这个接口使得这一子系统更加易用。
外观模式比较简单,两个字:封装!外观模式是为了解决类与类之间的依赖关系的,将类与类之间(比如A、B、C)的关系放在一个Facade类中,从外部看来只要调用Facade类中的方法,就可以自动调用A、B、C的功能,从而降低了类之间的耦合度。
认识外观模式:封装交互,简化调用
![外观模式示意图](http://hoxis-github-io.qiniudn.com/150708-facade.png)
如图所示,外观模式减少了外部与子系统内多个模块的交互,松散耦合,从而让外部可以更简单地使用子系统。一个直观的例子就是电脑,外部来看我们面对的是电脑,只要对电脑上的按钮操作即可,但是电脑内部有很多子系统,如CPU、Memory、Disk等。当我们启动或关闭电脑时,只要对封装好的Computer操作即可,而不需对每个子系统启动。
![外观模式示例](http://hoxis-github-io.qiniudn.com/150708-facade-example.png)
-
外观模式的调用顺序
外观模式的调用顺序
何时使用外观模式
- 希望为一个复杂的子系统提供一个简单的接口
- 想让客户端和抽象类的实现部分松散耦合
- 构建多层结构系统时,可以使用外观作为每层的入口
如果觉得有用,欢迎关注我的微信,有问题可以直接交流:
![你的关注是对我最大的鼓励!](https://www.github.com/hoxis/token4md/raw/master/wechat-qcode.jpg)
网友评论