我正在开发一个 API,我的一个队友坚持认为返回接口(interface)比将具体对象返回给最终用户更好。
问题是随着API编码的进行,接口(interface)的可维护性越来越麻烦,如果我们需要在接口(interface)的方法中添加类似参数的东西,那么我们需要先在接口(interface)中添加它,然后再在从该接口(interface)继承的所有其他类上添加该方法。
这让我们怀疑拥有这些接口(interface)的好处与它们的可维护性相比,是否真的有充分的理由在 API 上仅公开接口(interface)?
最佳答案
“在 API 上只公开接口(interface)真的有充分的理由吗?”
当然!可测试性!为您,也为您的消费者。他们可以模拟您的 API 以返回实现您的接口(interface)的模拟并测试他们的代码,而无需运行您的 API。
它还为您的实现提供了更大的灵 active 。通过让您的具体类远离公众视线,您可以自由地逐次更改您实际返回的内容以满足接口(interface)请求。
关于c# - 我应该在我的 API 上公开接口(interface)而不是具体对象吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29103623/