Domanda

Ho cercato su Internet per un po', e io non sono stato in grado di trovare qualsiasi connessione (o di mercato) gli strumenti/utilità/moduli in grado di analizzare un insieme di file Perl (moduli o script) e la bandiera o duplicati duplicato o copia/incolla il codice.

Sto meglio ora, ma ho usato per copiare e incollare le sezioni di codice in tutto il luogo.Vorrei pulire e riparare la mia vecchia duplicazione del codice, ma un po ' di strumento di aiuto sarebbe apprezzato in modo da non dover passare attraverso tutto il mio vecchio codice con un pettine.Inoltre, manuale di riconoscimento di questo tipo di reato è soggetto ad errori.

È stato utile?

Soluzione

domanda simile è stato inviato alle Quindi, solo pochi minuti fa .

Ecco un legame con alcuni strumenti si possono trovare utili.

Codice Confronto e plagio di rilevamento

Altri suggerimenti

Che cosa si intende per codice duplicato? Basta carattere corrispondenze esatte o corrispondenze semantiche.

Ci sono diversi strumenti come http://pmd.sourceforge.net/ in grado di rilevare il codice duplicato per le partite di stringa, questo strumento è per Java, ma l'abbinamento fonte funziona su testo semplice.

Se si desidera corrispondenza semantica, come

sub A
{return 1;}

per abbinare

sub B
{
    return 1;
}

Poi avrete bisogno di qualcosa di diverso: (

Ho usato CCFinder in passato per trovare sezioni di codice che sono duplicati. Funziona abbastanza bene, ma ha un'interfaccia .. interessante. Non ha il supporto nativo per il Perl, ma ha un'opzione di testo in chiaro che dovrebbe funzionare per il rilevamento di copiando e incollando almeno. C'è una soluzione Windows e Ubuntu - Gratuito, non è open source, purtroppo.

Disegni e modelli semantici rende un prodotto chiamato Clone Dr. che sembra essere in grado di analizzare un gran numero di tipi di lingua per le sezioni di codice clonati. Ma sembra che la loro versione di valutazione gratuita funziona solo su Java e Cobol.

Ho appena valutato Simian . Offre la connessione di un periodo di valutazione di 15 giorni al costo di un centinaio di dollari per una licenza singolo utente. Esso non supporta ufficialmente Perl, ma lo fa trattarli come testo normale e li analizza in ogni modo. Questo è un programma di utilità super veloce! E super facile da usare. Il report generato da questo strumento è semplice e facile da interpretare. Sono assolutamente approvo questo strumento. Ora ho solo bisogno di parlare con il mio capo e farlo per l'acquisto di una licenza.

Ecco un'altra pagina web che elenca alcune clone strumenti di rilevamento:

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

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top