- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我要与多个提供商集成,每个提供商都有不同的界面,所以我有 2 个选项,想选择其中一个:
1- 使用适配器,因此在我的应用程序内部将有接口(interface)包含所有带有我期望的参数的方法,当获取提供者 API 时,将通过从我的应用程序实现接口(interface)来为该 API 创建适配器。
2- 使用通用代理代理实现特定接口(interface)“可以是适配器选项中指定的接口(interface)”并且此代理必须调用提供者 API 并为我的应用程序提供使用它的方法
注意 1:您可能认为 2 个选项是相同的,但事实并非如此,在适配器中,您期望提供者 api 具有与您相同的方法,但名称和参数相同,但可能需要强制转换,在代理中,您从提供者方面获得更多灵 active ,因此提供者可以是 java api、REST 服务或其他任何东西。
注2:选项1中我和provider api的约定是业务共识,选项2中是必须实现的代码接口(interface)
注意 3:我可以在一个解决方案中同时使用,在我的应用程序中代理并使用适配器调用提供者 API,如果提供者 API 与我们的业务共识不匹配,我将在它上面创建另一个代理,例如:
Provider => proxy => adaptor => proxy
但我是否需要它而不是仅使用代理来包装所有这些?
最佳答案
我认为proxy 模式并不是为了让一个预期的界面适应另一个。也就是说,代理模式旨在解决与以下相关的问题:
这两种情况下,代理接口(interface)访问都很方便。
另一方面,您拥有适配器 模式,旨在将实际界面适配为预期界面。它不介意您需要的转换是简单还是复杂(如您在注释 1 中所述)。
所以,如果我没有误解你的问题,我认为你更适合适配器模式。
关于java - 使用适配器与代理与多个提供商集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32652527/
我在前几天的测验中遇到了以下问题。 Consider the code fragment (assumed to be in a program in which all variables are
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 9 年前。 Improve this qu
我刚开始接触 Objective-C,一般来说是 C,所以我想这也是一个 C 问题。它更像是一个为什么的问题,而不是一个如何做的问题问题。 我注意到,在除以两个整数时,小数部分向下舍入为 0,即使结果
我是一名优秀的程序员,十分优秀!