Adapt Parameter Pattern VS Extract Interface 有什么区别?
有时您无法使用提取接口重构,因为参数的接口可能太大或根本没有接口。你只需要传递类,你不能伪造它或扩展它来获得类可测试。
我在代码中看到的唯一区别是:提取具有不同名称的传递类的接口并手动创建。
您能否给我一个示例(最终带有源代码)以更详细地突出它们在代码上的差异?
Adapt Parameter Pattern VS Extract Interface 有什么区别?
有时您无法使用提取接口重构,因为参数的接口可能太大或根本没有接口。你只需要传递类,你不能伪造它或扩展它来获得类可测试。
我在代码中看到的唯一区别是:提取具有不同名称的传递类的接口并手动创建。
您能否给我一个示例(最终带有源代码)以更详细地突出它们在代码上的差异?
在ExtractInterface文章中,作者创建了一个接口和一个模拟实现。
在Adapt Parameter文章中,作者创建了一个接口、一个模拟实现和一个包装器实现。原始类被改编/包装,因为由于某种原因无法修改原始类。可以说(如果他们向后阅读文章),首先他调整了参数(通过包装它),然后从包装器中提取接口。