Commande : Détecter les clones
Une fonction: La commande scanne le code programme de la CODESYS projet pour le code copié, et ouvre le Résultats de la détection des clones view pour afficher les blocs de code clonés détectés. Dans le processus, seuls les blocs de code supérieurs à une taille spécifique sont considérés comme des clones. De très petits morceaux de code ne sont pas affichés en tant que clones.
A noter également à cet égard fonction d'extraction et les consignes Détection des clones de code.
Appeler:
menu
Analyse statique menu contextuel
Exigence: Le CODESYS Static Analysis projet est ouvert.
Deux positions de code sont considérées comme des clones si elles ont les propriétés suivantes :
Même composition structurelle
Les variables ont le même type de données.
Les noms de variables peuvent être différents (exception : accès aux composants). Cependant, un identifiant qui est contenu plusieurs fois dans le code doit être au même endroit dans les deux positions de code.
Les littéraux ont le même type de données.
Les littéraux peuvent être différents. Un littéral qui apparaît plusieurs fois dans le code doit apparaître au même endroit dans les deux positions de code.
| Onglet pour afficher les résultats de la recherche
|
| L'onglet affiche les clones de code dans une arborescence et fournit des commandes et des options de filtrage. La première occurrence d'un doublon dans l'ensemble de doublons est considérée comme le nœud racine. La couleur de fond des nœuds enfants indique si le code est différent ou complètement identique. Les mêmes couleurs signifient le "même code". Le contenu de l'arborescence est trié par ordre décroissant du nombre d'instructions du code dupliqué. |
Commandes et filtres sur le | |
Sous-nœuds/clone | Nombre de sous-nœuds (instructions) dans le bloc de code Si le nombre de sous-nœuds est inférieur à 20, le clone de code n'est pas pris en compte. |
Filtrer sur l'objet | Champ de saisie pour un Objet, par lequel la liste des clones est filtrée |
Afficher les clones sélectionnés | Condition : deux nœuds enfants du même nœud parent sont sélectionnés. Les deux objets de programmation sont affichés dans la partie supérieure de la vue à des fins de comparaison. Dans le processus, les doublons de code sont mis en surbrillance et les différences (par exemple, différents noms de variable) sont mises en surbrillance dans une couleur différente. |
Liste des clones de code | Colonnes
Un double-clic sur un nœud enfant ouvre l'objet de programmation correspondant et le bloc de code dupliqué y est sélectionné. |