在执行CRUD之前,将外部请求类转换为内部请求类的原因是什么?
示例代码:
public GetResponse(ExternalRequest request) {
InternalRequest internalRequest = RequestContextBuilder.buildRequest(request);
InternalResponse = solve(internalRequest);
}
有人能告诉我为什么不使用外部请求直接进行活动?外部和内部请求类的详细信息元素相同。
答案 0 :(得分:0)
如果没有更多背景,很难给出答案。但这里有一些我能想象的原因
<强>解耦强>
solve
方法与ExternalRequest
类无关。它只取决于InternalRequest
。可以使用InternalRequest
之外的其他输入构建ExternalRequest
。因此,如果您可以创建InternalRequest
,则可以调用solve
方法。
<强>验证强>
也许RequestContextBuilder.buildRequest
做的更多,然后只创建另一个对象。在创建ExternalRequest
之前,它可能会验证InternalRequest
的值。作者可能想表达InternalRequest
只有有效值。在这种情况下,它会使solve
方法的实现更容易,因为solve
方法可能依赖于InternalRequest
有效的事实。它不能检查所有属性。