扩展对象模式和适配器模式有什么区别?
What is the difference between Extension Objects Pattern and Adapter Pattern?
你能解释一下这个 Extension Object Pattern 以及它与适配器模式有何不同吗?
网络上似乎只有很少的资源解释了扩展对象模式,而且大多数都有些混乱(至少对我而言)。
提前致谢。
主要区别在于使用时间:
您将在软件开发过程中使用适配器,如果您无法更改现有接口,则可以引入适配器。
扩展对象模式提供了此类更改并使您能够,例如扩展已部署的软件。
此外,根据您发布的文字:
Adapter supports to adapt an existing interface. The Extension Objects pattern supports
additional interfaces. Extension Objects and Adapter can work together in situations
where an object needs to be adapted to an extension interface.
我认为您可以从这张解释扩展对象模式的图表中获得更好的想法。
你可以看到客户端可以
- 添加扩展
- 获取(使用)现有的扩展程序。
当您比较适配器时,客户端宁愿坚持现有的适配器。
您可以看到图表上列出的不同 extensions
是不同的 adapters
。
你能解释一下这个 Extension Object Pattern 以及它与适配器模式有何不同吗?
网络上似乎只有很少的资源解释了扩展对象模式,而且大多数都有些混乱(至少对我而言)。
提前致谢。
主要区别在于使用时间:
您将在软件开发过程中使用适配器,如果您无法更改现有接口,则可以引入适配器。
扩展对象模式提供了此类更改并使您能够,例如扩展已部署的软件。
此外,根据您发布的文字:
Adapter supports to adapt an existing interface. The Extension Objects pattern supports additional interfaces. Extension Objects and Adapter can work together in situations where an object needs to be adapted to an extension interface.
我认为您可以从这张解释扩展对象模式的图表中获得更好的想法。
你可以看到客户端可以
- 添加扩展
- 获取(使用)现有的扩展程序。
当您比较适配器时,客户端宁愿坚持现有的适配器。
您可以看到图表上列出的不同 extensions
是不同的 adapters
。