外观模式解读
2018-07-16 本文已影响0人
会九卦的兔子
外观模式是什么?
它是一个系统对外提供访问的一个统一的入口(外观类),该入口会整体糅合完成你所需要的功能或者业务。
这个入口隐藏了子系统完成所需要功能的复杂性,可以使得子系统对外来说更加容易调用。
主要解决的是:
降低访问内部系统的复杂联系,简化客户端调用系统的接口。
客户端调用方面:
不需要知道系统内部有多么复杂,整个系统只需要提供一个解决问题的入口就行了。
所以子系统和客户端是解耦的,但是相对入口的外观类来说切不是,因为有所关联。
那么外观模式的使用场景:
第一为复杂的模块或子系统提供外界访问模块。
第二子系统相对独立。
预防低水平开发人员带来的风险。
好处:
对客户屏蔽子系统组件,减少了客户处理的对象数目并使得子系统使用起来更加容易
只是提供了一个访问子系统的统一入口,并不影响用户直接使用子系统类。
缺点:
1. 不能很好的扩展程序的功能,如果要扩展的话就得修改外观类代码
2. 不能很好的限制客户端的使用子系统功能,缺少程序可变性和灵活性
一般情况客户端调用的话是这样的:

外观模式的话是糅合功能,只提供一个入口
