有没有一个自动工具可以发现你的代码库的干燥程度?

问题描述 投票:0回答:4

我是DRY原则的坚定倡导者

每条知识都必须在系统内有一个单一的、明确的、权威的表示。

是否有任何工具可以测试代码库的干燥程度,并量化和查明具体的纠正示例?

dry
4个回答
3
投票

猿猴

Simian(相似性分析器)识别 Java、C#、C、 C++、COBOL、Ruby、JSP、ASP、HTML、XML、Visual Basic、Groovy 源 代码甚至纯文本文件。事实上,simian 可以用于任何 人类可读的文件,例如 ini 文件、部署描述符、 说出它的名字。

Simian 可在任何 .NET 1.1 或更高版本支持的环境中本机运行 并且在任何 Java 5 或更高版本的虚拟机上,这意味着 Simian 可以运行 几乎可以在您希望的任何硬件和操作系统上使用。 Java 和 .NET 运行时都包含在 分布。


2
投票

PMD 的 复制过去检测器 (CPD)

重复的代码可能很难找到,尤其是在大型项目中。但 PMD 的复制/粘贴检测器 (CPD) 可以为您找到它!

请注意,CPD 适用于 Java、JSP、C、C++、Fortran 和 PHP 代码。

您可以通过命令行运行它,有一个 ANT 任务和一个 Eclipse 插件。


1
投票

适用于 Visual Studio 的克隆侦探

Clone Detective 是一个 Visual Studio 集成,可让您 分析 C# 项目中在其他地方重复的源代码。 重复很容易导致不一致,并且通常是一个问题 分解不良代码的指示器。

enter image description here


0
投票

请参阅我们的 CloneDR 工具,该工具使用计算机语言结构作为指导来查找精确的和几乎未命中的重复代码集。除了检测克隆之外,它还将向您展示粗略的抽象和解释克隆实例之间差异的参数绑定。

它具有多种语言的实例化:C、C++、C#、Java、JavaScript、PHP、COBOL、Python、PLSQL...它往往会在任何大小较大的系统(例如 100K)中发现 10-15% 的重复代码SLOC 及以上)。网站上有多种语言的示例报告,您可以下载试用版。

© www.soinside.com 2019 - 2024. All rights reserved.