美文网首页
Android 设计模式入门到精通之十:外观模式(Facade

Android 设计模式入门到精通之十:外观模式(Facade

作者: 编程家园 | 来源:发表于2020-02-04 11:02 被阅读0次

    外观模式(Facade Pattern,门面模式)

    1. 概念

    Facade Pattern: Provide a unified interface to a set of interfaces in a subsystem. Facade defines a higher-level interface that makes the subsystem easier to use. 外观模式:为子系统中的一组接口提供一个统一的入口。外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。 

    2. 应用场景 --比如电视遥控器(集成各子模块的操作)

    a. 为复杂的模块或子系统提供外界访问的模块;

    b. 子系统相互独立;

    c. 在层析结构中,可以使用外观模式定义系统的每一层的入口。

    3. 优点

    a. 简化了复杂的接口,客户端只需与外观交流,而无需知道具体的子系统组件;符合 迪米特法则(最少知识原则)。

    b. 还将客户从组件的子系统中解耦,例如若组件升级,只需要修改外观代码即可,无需修改客户端代码。

    4. 缺点

    暂无。

    5. 原理介绍

    简单来说,该模式就是把一些复杂的流程封装成一个接口供给外部用户更简单的使用。这个模式中,设计到3个角色。

    a. 门面角色:外观模式的核心。它被客户角色调用,它熟悉子系统的功能。内部根据客户角色的需求预定了几种功能的组合。

    b. 子系统角色:实现了子系统的功能。它对客户角色和Facade时未知的。它内部可以有系统内的相互交互,也可以由供外界调用的接口。

    c. 客户角色:通过调用Facede来完成要实现的功能。

    6. 代码实践:

    JDK: 

    •java.lang.Class

    •javax.faces.webapp.FacesServlet

    Android: TBD

    相关文章

      网友评论

          本文标题:Android 设计模式入门到精通之十:外观模式(Facade

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