包装器外观模式

5
我正在处理设计模式的问题 - 我以前在一些系统中使用了Facade和Adapter模式。
现在我发现包装器Facade模式。如果我理解正确(我只有一个模糊的想法),包装器Facade是Facade和Adapter模式的组合。
现在我有一些问题:
  • 我通常什么时候使用包装器Facade模式?
  • 有人知道一本描述包装器Facade模式的书籍(最好有Java示例)吗?
  • 有人能给我一个例子吗?
2个回答

5
那篇论文中的关键总结句是这样的:
“Facades通过一个更简单的API隐藏复杂的类关系,而Wrapper Facades则通过更丰富的类API隐藏复杂的函数和数据结构关系。”
解释:Wrapper Facade指的是在本地非OOP API和代码之上的OOP层。这种模式与一般的Java开发并不相关;它的例子包括具有许多native方法的类,如java.io流实现或抽象窗口工具包(AWT)。

谢谢 - 我想我没有理解那句话。很好知道。 - Sean Landsman

0
从你提供的链接中,我不确定我能区分 FacadeWrapper Facade 之间的区别 - 它们似乎做着完全相同的事情:为一组低级功能/功能提供简化的接口。
因此,我不确定这个 "wrapper facade" 是否使用了适配器模式 - 为什么需要呢?如果外观的唯一目的是为客户端提供简化的 API,则无需将一个东西适应另一个。
同样,如果客户端需要特定的接口,则 Adaptor 将是正确的选择,而不需要 Facade
再次说明,这一切都假设我正确地阅读了那个链接 :-)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接