如何重构三个类中重复的代码?

时间:2015-03-23 19:00:03

标签: c# asp.net visual-studio refactoring code-duplication

在Visual Studio中我有一个ASP.NET 4.5项目,语言是C#。在那个项目中,我找到了三个类(.cs),大多数代码都是相同的,包括字段和属性。

在这种情况下,最小化和整合(重构)重复代码的好方法是什么?

1 个答案:

答案 0 :(得分:1)

这是一个冒险的重构过程,但是:

  • 如果您没有

  • ,您可能需要先编写单元测试
  • 选择其中一个类作为主

  • 重命名其他的以导致编译器错误
  • 将客户端代码中的类重命名为主类名称
  • 重新编译
  • 将其他两个课程的内容添加到已经
  • 的主人中
  • 删除两个非主类

如果你有ReSharper(或其他一些优质的重构工具),这个过程会更顺利。

谨慎之处......如果您没有设置单元测试,则很难确保实际看起来重复的代码。通过视觉检查很容易错过逻辑上的变化。