C# C语言中冗余代码的检查方法#

C# C语言中冗余代码的检查方法#,c#,C#,是否有任何工具或方法可以检查如何优化代码?消除冗余?我正在使用VS2010 Thanx这样的工具,即使存在,也不可靠。最好由优秀的开发人员或架构师进行代码审查。探查器会让您很好地了解应用程序的大部分时间花在哪里。但是,从知道优化什么到如何优化,需要经验以及对一般代码库和问题域的知识。您需要的是代码覆盖工具。它们记录正在执行的代码行。为了使其有效,需要一个完整的测试套件或手动测试运行。这将显示从未使用过的代码行,并将帮助您做出决策 静态分析还可以帮助您确定代码路径,并提供有关如何以及在何处调用代码

是否有任何工具或方法可以检查如何优化代码?消除冗余?我正在使用VS2010


Thanx

这样的工具,即使存在,也不可靠。最好由优秀的开发人员或架构师进行代码审查。

探查器会让您很好地了解应用程序的大部分时间花在哪里。但是,从知道优化什么到如何优化,需要经验以及对一般代码库和问题域的知识。

您需要的是代码覆盖工具。它们记录正在执行的代码行。为了使其有效,需要一个完整的测试套件或手动测试运行。这将显示从未使用过的代码行,并将帮助您做出决策

静态分析还可以帮助您确定代码路径,并提供有关如何以及在何处调用代码的信息

SABOT代码覆盖范围的几个好问题:

还可以查看Microsoft的FxCop进行静态分析:


我不知道如何删除冗余,但有一些很好的代码分析功能,可以帮助识别未使用的代码块。它还可以为更干净的代码提供建议,但并不总是100%准确。

有一个VS插件。它在引擎盖下使用。我没有真正使用过它,但是按照你的要求做了。将其与代码审查结合起来可能会有所帮助。

有一种(商业的,249欧元)解决方案,用于检查重复代码,即使在大型项目中也是如此


任何工具都无法取代经验和专业技能。有很多生产力工具可以帮助你,例如一个流行的工具,但它不会为你解决所有问题。在某些时候,你只需要依靠你的能力和你的团队成员的能力。学习如何编写好代码需要时间

退一步,带着特定设计原则的心态审视代码通常会有所帮助。这是一个很好的开始。你还可以问自己一些其他问题:

  • 您的类和类型是否正确封装
  • 您的代码是测试驱动的还是行为驱动的
  • 您的测试是定义离散的行为单元,还是仅针对正在测试的实现进行定制
  • 为了明确地解决冗余问题,非常简单,您是否在两个地方复制/粘贴了做相同事情的代码

为此,我们在构建服务器中使用内置功能。

您所说的冗余到底是什么意思?另一个dup: