外观模式浅析

来源:互联网 发布:java培训学校 编辑:程序博客网 时间:2024/06/05 15:33

外观模式:其实就是通过包装,我们可以在外界去调用统一的接口,可以这么说在外面我们所能看到的是外观对象,而不会看到里面的实际的操作,和里面的对象,这样的话其实就是让我们的代码更加好阅读,以及增强了可维护性。

就好比我们如果要把很多类的对象都去创建出来,然后用于某个功能,也就是说我们在外界需要去处理全部的细节才可以去实现这样的功能,如果我们直接在控制器中这样做的话,后期不好维护。所以其实我们可以把这些对象的组合抽成一个接口让外界进行调用。

有些时候我们只需要子系统中的某些的基本行为,而不需要去做什么定制的话,其实外观模式给我们提供了一个简化的接口,这样处理起来方便。这样也解决了客户端与我们的这些类中的耦合关系。

结构图:


客户端(Client):也就是调用Facade对象去完成相应的功能的角色。

外观(Facade):就是提供一个接口,让客户端去调用,里面知道各个子系统的功能,一个外观类中可以有多个子系统。

子系统(SubSystem):就是实现了子系统中的功能,处理Facade对象所下发的任务,每一个子系统其实也可以为客户端所调用。


外观模式的应用其实就好比我们想去上海,我们可以选择自己开车去,但是这样的话就要考虑路况啊,选择哪条路啊这样会很麻烦,如果这个时候我们是去找到了一个出租车司机的话,让出租车司机去帮我们做这个事情我们就可以不用管了,都让出租车司机去管,其实这样的话我们其实可以把出租车司机变成一个外观类,然后这个出租车司机提供出开往上海的接口,我们在外面直接调用就好了,不用去管里面的具体细节实现。

原创粉丝点击