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