Facade pattern,结构型模式,它为子系统的众多接口提供了统一的高层接口,使子系统更容易使用。
对于以下5个接口:
将其组合成满足需求的组合接口提供给调用者使用:
这样保证了底层接口的细粒度。
定义
要求一个子系统的外部与其内部的通信必须通过一个统一的对象进行。门面模式(Facade 模式)提供一个高层次的接口,使得子系统更易于使用。
To make a complex subsystem easier to use, a simple interface should be provided for a set of interfaces in the subsystem.
为了使复杂的子系统更容易被使用,应当为子系统的众多接口提供一个简洁的高层接口。
使用场景
为一个复杂子系统提供一个简单接口;
当你需要构建一个层次结构的子系统时,使用Facade模式定义子系统中每层的入口点。
实际工作中,比如维护一段祖传代码的时候,我们会为原本凌乱的业务逻辑整合出一个新的接口,此外,在构建新项目的时候,我们同样可以考虑增加“外观层”,这样即保持了底层功能的细粒度,也为调用者提供了方便。
Android 中 context 就是一个高度封装的产物
总结
封装。通过一个高层次结构为用户提供统一的API入口,使得用户通过一个类型就基本能够操作整个系统,这样减少了用户的使用成本,也能够提升系统的灵活性。