2012-09-14 40 views
1

在创建Web应用程序时,如果我们使用第三方api调用,它们本身提供响应对象,那么在视图/模型中直接使用这些响应对象是个好主意吗?或者我们是否需要创建一个模型对象来复制这些响应对象中的数据,以便它们与第三方对象分离?即使在没有其他数据属性要添加的情况下,除了响应对象中已存在的数据之外,是否还需要解耦?另外这些响应对象似乎没有setter方法,但只有读取方法?这些信息是否以任何方式改变了设计决策? 这里有什么好的做法?使用来自第三方api调用的响应对象

回答

0

构建模型对象时,我不会依赖外部响应对象。如果模型对象需要响应中的属性,那么我会传递属性。这有助于在测试过程中模拟模型对象,而不会有太多麻烦。

当谈到视图对象时,我认为在呈现过程中依赖响应对象从它们提取属性是很好的。

我的两分钱!

+0

感谢您的回答。只是想知道,如果响应对象有很多自定义对象,那么我们应该做的是在模型中重新创建自己的这些自定义对象的副本版本?如果你能分享你的想法,这将是非常有帮助的。 – learner

+0

当然,不像模型很大程度上依赖于响应对象层次结构。你能够提供一个关于这种依赖关系的具体例子吗? – Vikdor

+0

我无法分享任何代码,因为它违反了我们公司的政策。不过,我会尽力阐述。响应对象有一些自定义对象,这些对象在等式,哈希码等方面都有很好的定义。当我使用响应对象来构建我的模型时,这些对象与我认为适合作为模型属性的对象类型相同。我的两难问题是是否直接使用响应对象,并从响应对象自定义对象中提取必要的细节,或者创建自己的自定义对象,这些自定义对象将映射响应自定义对象,除非它将被解耦 – learner

相关问题