Frage

Ich habe das Internet für eine Weile jetzt gesucht und ich habe kein frei (oder billig) Tools / Utilities / Module zu finden in der Lage, die eine Reihe von Perl-Dateien (Module oder Skripte) analysiert und Flag duplizieren oder geklont oder kopieren / Einfügen-Code.

Ich bin jetzt besser, aber ich benutzte Abschnitte des Codes zu kopieren und alle über den Ort. Ich mag es aufzuräumen und meine alte Code-Duplizierung zu beheben, aber ein wenig Werkzeug Hilfe würde geschätzt werden, so will ich nicht mit einem feinen Kamm durch alle meinen alten Code gehen. Außerdem manuelle Erkennung dieser Art von Handlung ist fehleranfällig.

War es hilfreich?

Lösung

Funny eine ähnliche Frage wurde gebucht SO nur wenige Minuten vor .

Hier ist ein Link mit einigen Tools, die Sie nützlich finden können.

-Code-Vergleich und Plagiat-Erkennung

Andere Tipps

Was meinst du mit doppeltem Code? Nur Charakter exakte Übereinstimmungen oder semantische Übereinstimmungen.

Es gibt mehrere Tools wie http://pmd.sourceforge.net/ dass doppelten Code erkennen kann von String Streichhölzern, ist dieses Tool für Java, aber die Quelle Anpassung funktioniert auf Klartext.

Wenn Sie semantische Matching wollen, wie

sub A
{return 1;}

übereinstimmen

sub B
{
    return 1;
}

Dann müssen Sie etwas anderes: (

ich verwendet habe CCFinder in den letzten Abschnitte des Codes zu finden, die Duplikate sind. Es funktioniert ganz gut, aber hat eine .. interessante Schnittstelle. Es hat keine native Unterstützung für Perl, aber es hat eine Option Klartext hat, die für die Erkennung von kopieren und einfügen und zumindest funktionieren sollen. Es ist eine Windows und Ubuntu Lösung - Freeware, nicht Open Source leider.

Semantic Designs macht ein Produkt Clone Dr. genannt, die in der Lage sein wird zu analysieren eine große Anzahl von Sprachtypen für geklonte Codeabschnitte. Aber es scheint, dass ihre kostenlose Testversion funktioniert nur auf Java und Cobol.

Ich habe gerade ausgewertet Simian . Es verfügt über eine 15 Tage kostenlose Testzeit und hundert Dollar für eine Einzelplatzlizenz kostet. Es ist nicht offiziell unterstützt Perl, aber es hat sich als Klartext behandeln und analysiert sie sowieso. Dies ist ein super schneller Dienstprogramm! Und super einfach zu bedienen. Der Bericht von diesem Tool generiert wird, war einfach und leicht zu interpretieren. Ich befürworte völlig dieses Werkzeugs. Jetzt muß ich zu meinem Chef nur reden und ihn um eine Lizenz zu erwerben.

Hier ist eine andere Web-Seite einige Klon-Erkennungs-Tools Auflistung:

http://sel.ics.es .osaka-u.ac.jp / cdtools / index-e.html

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top