为 C# Express 用户识别潜在重复代码的好工具都有哪些? [关闭]
Posted
技术标签:
【中文标题】为 C# Express 用户识别潜在重复代码的好工具都有哪些? [关闭]【英文标题】:What are good tools for identifying potentially duplicated code for C# Express users? [closed]为 C# Express 用户识别潜在重复代码的好工具有哪些? [关闭] 【发布时间】:2009-04-16 21:26:11 【问题描述】:另见“Any tools to check for duplicate VB.NET code?"
我的一个朋友只能使用 Visual Studio 的 Express 版本,我正在尝试帮助他重构以删除大量重复。
【问题讨论】:
【参考方案1】:您可以查看Simian 或DuplicateFinder。两者都不依赖于 IDE,尽管您可以 integrate Simian quite easily。
【讨论】:
【参考方案2】:Clone Detective 似乎对您有用。我以前没用过,但本周我在 codeplex 上偶然发现了它。
【讨论】:
我以前用过一两次,但它确实报告了一些误报,虽然不多。 查看页面,这表明VS标准或更高。它不适用于 Express。【参考方案3】:您的朋友应该看看Gendarme,它是 Microsoft 的 FxCop/Code Analysis 的 FOSS 和跨平台替代方案,它是 Mono 项目的一部分。它includesrules 检查重复代码。
【讨论】:
【参考方案4】:试试Atomiq:
Atomiq Code Similarity Finder 是一款供开发人员查找和消除重复代码的工具。它是为 .NET 开发人员设计的,但同样适用于其他语言的开发人员,甚至是网页设计师! Atomiq 适用于各种源代码:
我们目前支持 C#、VB.Net、ASPX、Ruby、Python、Java、C、C++、 ActionScript 和 XAML,即将推出更多扩展。这是 更新代码的人的完美伴侣工具 很少,并且不可能记住其中的所有内容或 由 2 名或更多开发人员组成的团队在同一个项目上工作 因为不是他们自己写的,所以什么都知道。
消除类似代码
(以及随之而来的用头撞墙) Atomiq 不只是找到完全匹配,它会找到相似的代码。它忽略 “绒毛”,如空格、字符串内容、花括号、cmets 和 using/import 语句,以便您可以找到导致的重复代码 问题。在 VB.NET 中,它也会忽略仅包含 “Next”、“End While”、“End Try”、“End If”、“End Property”、“End Get” 和“结束集”。
【讨论】:
这个下载链接似乎坏了,我在他们的 Dropbox 链接上收到 404 错误【参考方案5】:仅供参考,既然你提到了“速成版”,你可能需要寻找可以在 VS 之外工作的东西,因为我不相信速成版支持插件
【讨论】:
速成版明确不支持插件。从技术上讲,它确实如此,因为 MS 提供的一些功能是插件,但是为了让它们工作而跳了起来。【参考方案6】:查看我们的CloneDR,它适用于多种语言,包括 C#。
2010 年 10 月编辑:VB6、VBScript 和 VB.net 添加为 CloneDR 支持的语言。 没有对 MS IDE 的特定支持,但它在一个简单的源文件列表上运行,并生成一个漂亮的 html 报告,因此不需要太多集成。请参阅链接中的示例报告。
【讨论】:
以上是关于为 C# Express 用户识别潜在重复代码的好工具都有哪些? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
一种基于AndroidiOS平台的移动端银行卡识别技术,移动支付的好帮手
如何使用 JWT 在 Express 中验证单个路由(无代码重复)的多种类型用户的身份验证令牌?
LINQ to Entities 无法识别方法“Double Parse(System.String)”无法转换为存储表达式 C# asp.net [重复]