回答
我不知道关于删除冗余,但ReSharper有一些不错的代码分析功能可以帮助识别未使用的代码块。它也可以提供更清晰的代码建议,但并不总是100%准确。
这样的工具,即使它们存在,也不可靠。最好的做法是由一位优秀的开发人员或架构师进行代码审查。
一个分析器会给你一个很好的想法,你的应用程序花费大部分时间。从知道什么到如何优化,但需要经验以及一般的代码库和问题领域的知识。
你想要的是Code Coverage工具。这些记录了哪些代码行正在执行。为了使其有效,需要完整的测试套件或手动测试运行。这将显示从未使用的代码行,并将帮助您做出决定。
静态分析还可以帮助您了解代码路径,并为您提供有关代码调用方式和位置的信息。
几个很好的问题sabout代码覆盖率:
What can I use for good quality Code Coverage for C#/.NET?
也期待在微软的FxCop静态分析:
http://msdn.microsoft.com/en-us/library/bb429476(VS.80).aspx
有http://clonedetectivevs.codeplex.com/这是一个VS插件。它在引擎盖下使用http://conqat.cs.tum.edu/。我没有真正使用它,但做你的问题。加上代码审查,并可能有所帮助。
有一个(商业,249€)解决方案检查重复的代码,即使在大型项目。
http://www.solidsourceit.com/products/SolidSDD-code-duplication-cloning-analysis.html
无需工具即可更换的经验和专业知识。有很多生产力工具可以提供帮助,例如ReSharper,但它不会为您解决所有问题。在某些时候,你只需要依靠你的能力和你的团队成员的能力。学习如何编写代码需要时间。
它通常有助于退后一步,并以某种设计原则的思维看待您的代码。 S.O.L.I.D.可以是一个很好的开始。您可能会问自己的其他一些问题是:
- 您的类和类型是否被正确封装?
- 您的代码是否以任何方式测试驱动或行为驱动?
- 您的测试是否定义了不连续的行为单元,还是仅针对正在测试的实现定制?
- 为了明确地解决冗余问题,很简单,您是否已经在两处复制/粘贴了相同的代码?
为此,我们使用我们的TeamCity构建服务器中的内置Duplicated Finder。
- 1. 冗余代码检查
- 2. C++多维数组坏多余代码
- 3. 检查C#代码的性能的最佳方法
- 4. 找到多余的代码
- 5. 使用方法属性来消除多余的代码
- 6. Eclipse检查冗余方法调用
- 7. 检查C编程代码
- 8. Sonarquberunner检查c#代码
- 9. C++代码加密检查
- 10. 避免JavaScript中的多余代码(JQuery)
- 11. 如何禁用Qualifier'this。'在TeamCity代码检查中是多余的规则?
- 12. 我如何暗示链接方法的代码合约以避免链接时的多余检查?
- 13. 在C代码中检查文本框的代码值#
- 14. 检查方法C#中的内联
- 15. C++/C Arduino秒表代码检查
- 16. c#序列化中的方法代码
- 17. 在C++中检查代理的最佳方法是什么?
- 18. C# - 方法无效检查
- 19. 检查C#代码使用的文件
- 20. C#检测多余的文件
- 21. 代码审查方法
- 22. (SIGABRT)代码-6检查失败:检测框架方法
- 23. 简化多余的jQuery代码
- 24. 帮助我消除多余的代码
- 25. 检查代码
- 26. 方法存在检查器代码中断vs2015
- 27. 如何简化这个多余的C++代码?
- 28. 如何在错误检查期间减少冗余代码
- 29. 揭露的Borland C++中我用Borland C++代码的方法C#
- 30. 这种检查“礼物代码”的方法是否安全?
你是什么意思冗余? – BoltClock 2011-02-18 13:06:01
重复的代码我猜。 – jgauffin 2011-02-18 13:09:27