我正在研究设计模式的问题——过去我在某些系统中使用过外观和适配器模式。
现在我找到了包装外观模式。如果我理解正确(我只有一个模糊的想法),包装外观是外观和适配器模式的组合。
现在我有一些问题:
- 我通常什么时候使用包装外观模式?
- 有谁知道描述包装外观模式的书(最好是用java中的例子)?
- 谁能给我一个例子?
我正在研究设计模式的问题——过去我在某些系统中使用过外观和适配器模式。
现在我找到了包装外观模式。如果我理解正确(我只有一个模糊的想法),包装外观是外观和适配器模式的组合。
现在我有一些问题:
那篇论文中的关键总结句是:
Facades 将复杂的类关系隐藏在更简单的 API 后面,而 Wrapper Facades 将复杂的函数和数据结构关系隐藏在更丰富的类 API 后面。
解释: Wrapper Facade 属于原生、非 OOP API 和代码之上的 OOP 层。这种模式与一般的 Java 开发不太相关;它的示例是具有很多native
方法的类,例如java.io
流实现或抽象窗口工具包 (AWT)。
从您提供的链接中,我不确定我能分辨出 aFacade
和 a之间的区别Wrapper Facade
-它们似乎做同样的事情:为一组不同的低级功能/功能提供简化的接口。
因此,我不确定这个“包装外观”是否使用了适配器模式——为什么需要它?如果外观的唯一目的是为客户端提供简化的 API,那么它不需要将一件事适应另一件事。
同样,如果客户端需要特定的接口,那么 aAdaptor
将是可行的方法,并且不需要 aFacade
同样,这一切都假设我已经正确阅读了该链接:-)