2014_2015:s3:concprogobjet:td:reverse-engineering
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
2014_2015:s3:concprogobjet:td:reverse-engineering [2014/11/22 16:32] – [Conventions de codage et de style : Utilisation du plugin CheckStyle] blay | 2014_2015:s3:concprogobjet:td:reverse-engineering [2014/11/26 09:50] (current) – [Métriques : utilisation du plugin Metrics de Eclipse] blay | ||
---|---|---|---|
Line 45: | Line 45: | ||
- Vous pouvez double-cliquer sur les métriques pour les voir en détail en particulier pour visualiser les valeurs maximales. Les éléments enfants à chaque niveau sont triés par ordre décroissant métrique (maximum ). | - Vous pouvez double-cliquer sur les métriques pour les voir en détail en particulier pour visualiser les valeurs maximales. Les éléments enfants à chaque niveau sont triés par ordre décroissant métrique (maximum ). | ||
- Etudiez les valeurs des métriques obtenues. | - Etudiez les valeurs des métriques obtenues. | ||
- | * Sont-elles dans les limites souhaitées? | + | * Sont-elles dans les limites souhaitées? |
* Dans quel cas, ne sont-elles pas dans la limite souhaitée? Qu'en pensez-vous? | * Dans quel cas, ne sont-elles pas dans la limite souhaitée? Qu'en pensez-vous? | ||
* Que pensez-vous de la classe //Graphe// : | * Que pensez-vous de la classe //Graphe// : | ||
Line 174: | Line 174: | ||
* //"Il couvre un large spectre, en termes de contrôle (de la convention de nommage au calcul de complexité cyclomatique) et il fournit, en standard, près de 300 règles « prêtes à l' | * //"Il couvre un large spectre, en termes de contrôle (de la convention de nommage au calcul de complexité cyclomatique) et il fournit, en standard, près de 300 règles « prêtes à l' | ||
En savoir plus sur le choix : (cf. [[http:// | En savoir plus sur le choix : (cf. [[http:// | ||
+ | |||
==== Exécuter PMD ==== | ==== Exécuter PMD ==== | ||
+ | **Questions :** | ||
+ | - Sélectionner le projet -> propriétés -> PMD -> activer PMD | ||
+ | - Clique droit sur le projet puis PMD vérifier le projet {{ : | ||
+ | - Pour mieux voir les erreurs, ouvrir une nouvelle vue PMD {{ : | ||
+ | - Etudier les erreurs relevées Pour comprendre les erreurs pensez à cliquer sur l' | ||
+ | - Rechercher les codes dupliqués et étudier les duplications... et sur vos propres codes. {{ : | ||
+ | - Générer le rapport PMD {{ : | ||
+ | - Etudier les erreurs relevées dans vos propres codes. | ||
+ | |||
+ | < | ||
+ | <!-- | ||
1- Fabriquons un exemple pour être sûr d' | 1- Fabriquons un exemple pour être sûr d' | ||
Line 199: | Line 211: | ||
} | } | ||
</ | </ | ||
- | + | !--> | |
- | 2- Clique droit sur le projet puis PMD vérifier le projet | + | </ |
- | + | ||
- | {{ : | + | |
- | + | ||
- | 3- Pour mieux voir les erreurs, ouvrir une nouvelle vue PMD | + | |
- | {{ : | + | |
- | + | ||
- | 4- Générer le rapport PMD | + | |
- | {{ : | + | |
- | + | ||
- | 5- Etudier les erreurs relevées dans la nouvelle classe, dans les codes existants et dans vos propres codes. | + | |
- | + | ||
- | Pour comprendre les erreurs pensez à cliquer sur l' | + | |
- | + | ||
- | {{ : | + | |
==== Configurer PMD ==== | ==== Configurer PMD ==== | ||
1- Sélectionner eclipse -> Preferences -> PMD | 1- Sélectionner eclipse -> Preferences -> PMD | ||
Line 223: | Line 221: | ||
{{ : | {{ : | ||
+ | ==== Allons plus loin, comment PMD fonctionne ? ==== | ||
+ | |||
+ | * http:// | ||
+ | * http:// | ||
+ | * Quelles règles? http:// | ||
+ | < | ||
+ | <!-- | ||
==== Découverte de l' | ==== Découverte de l' | ||
Line 235: | Line 240: | ||
* La classe Theorie.java est notée comme une GOD Class ? Pourquoi ? (trop de méthodes) | * La classe Theorie.java est notée comme une GOD Class ? Pourquoi ? (trop de méthodes) | ||
{{ : | {{ : | ||
- | ==== Utilisation personnelle de PMD ==== | ||
- | Appliquer PMD sur vos propres codes. | ||
- | ==== Allons plus loin, comment PMD fonctionne ? ==== | ||
- | * http:// | ||
- | * http:// | ||
- | * Quelles règles? http:// | ||
===== Reverse Engineering ===== | ===== Reverse Engineering ===== | ||
Line 258: | Line 257: | ||
* Cette visualisation doit se faire sur une sous-partie. Sélectionner quelques classes qu'il vous semble intéressant de visualiser. | * Cette visualisation doit se faire sur une sous-partie. Sélectionner quelques classes qu'il vous semble intéressant de visualiser. | ||
- Generate sequence or collaboration diagrams | - Generate sequence or collaboration diagrams | ||
+ | |||
+ | |||
Line 291: | Line 292: | ||
Mais on a quand même 14,9Mo... | Mais on a quand même 14,9Mo... | ||
+ | !--> | ||
+ | </ | ||
2014_2015/s3/concprogobjet/td/reverse-engineering.1416673920.txt.gz · Last modified: 2014/11/22 16:32 by blay