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