Skip to content

门面模式

定义

也叫作外观模式,是一种比较常见的封装模式。
要求一个子系统的外部与其内部的通信必须通过一个统一的对象进行。门面模式提供一个高层次 的接口,使得子系统更易于使用。

就像我们把一些常用的方法封装成Utils类,把算法相关的操作封装成Algorithm

门面模式的应用

优点:

  • 减少系统的相互依赖
  • 提高了灵活性。不管子系统内部如何变化,只要不影响门面对象即可。
  • 提高安全性

缺点:不满足开闭原则,对修改关闭,对扩展开放。

使用场景

  • 为一个复杂的模块或子系统提供一个供外界访问的接口
  • 子系统相对独立——外界对子系统的访问只需要调用方法即可

门面模式的注意事项

  • 一个子系统可以有多个门面
  • 子系统可以提供不同的访问路径

门面不参与系统内的业务逻辑

提供给外部的public方法不应该被另一个public方法执行

参考: 《设计模式之禅》 秦小波