外观模式解读

外观模式是什么?

    它是一个系统对外提供访问的一个统一的入口(外观类),该入口会整体糅合完成你所需要的功能或者业务。

    这个入口隐藏了子系统完成所需要功能的复杂性,可以使得子系统对外来说更加容易调用。

主要解决的是:

    降低访问内部系统的复杂联系,简化客户端调用系统的接口。

客户端调用方面:

    不需要知道系统内部有多么复杂,整个系统只需要提供一个解决问题的入口就行了。

    所以子系统和客户端是解耦的,但是相对入口的外观类来说切不是,因为有所关联。



那么外观模式的使用场景:

第一为复杂的模块或子系统提供外界访问模块。

第二子系统相对独立。

预防低水平开发人员带来的风险。

好处:

    对客户屏蔽子系统组件,减少了客户处理的对象数目并使得子系统使用起来更加容易

    只是提供了一个访问子系统的统一入口,并不影响用户直接使用子系统类。

缺点:

    1. 不能很好的扩展程序的功能,如果要扩展的话就得修改外观类代码

    2. 不能很好的限制客户端的使用子系统功能,缺少程序可变性和灵活性



一般情况客户端调用的话是这样的:


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


你可能感兴趣的:(外观模式解读)