Qu’est-ce que la qualité ?
Du point de vue de l’organisation
technique.
La qualité implique la définition et le
respect de normes de développement qui
assurent une uniformité du code source
Un code de qualité assure la pérennité, la
diffusion et la maintenabilité du projet.
Comment se mesure la
qualité ?
Sur quels critères peut-on se baser
pour analyser la qualité du code ?
Lisibilité du code
Uniformité des conventions
De nommage (variables, méthodes, classes,
packages)
D’indentation
D’organisation (répertoires du projet)
De documentation (commentaires, JavaDoc)
Couplage minimum (modules
indépendants)
Complexité cyclomatique miminum
Taux de commentaires (JavaDoc)
Démarche qualité
Objectif : introduire des démarches de
contrôle qualité au niveau du code
source
On passe de plus en plus par des
automates
Tous les outils présentés sont utilisable
à la fois avec ANT et Maven ou
directement avec Eclipse pour la
plupart
JAVA
Règles de codage
Pour Java:
"Coding Conventions for the Java
Programming Language" - Sun
Microsystems
"Elements of Java Style" - Alan
Vermeulen (eds.)
Outils de vérification de
code
PMD (SourceForge project)
CheckStyle (SourceForge project)
JTest (Parasoft => payant)
Jdepend
FindBugs
JCSC
Macker
Jlint
Classycle
QALab
XRadar
PMD
Que signifie PMD ?
Pretty Much Done
Project Mess Detector
Project Monitoring Directives
Project Meets Deadline
Programming Mistake Detector
Pounds Mistakes Dead
PMD Meaning Discovery (recursion, hooray!)
Programs of Mass Destruction
Programming Meticulous coDe
Plutôt bien fait
Détecteur de désordre pour projet
Surveillant des directives de projet
Le projet rencontre la date-limite
Détecteur d'erreur de programmation
Livres d'erreurs mortes ??
Découverte de la signification de PMD
Programmes de destruction de masse
Code de programmation méticuleux
PMD (1)
PMD est un outil qui parcourt les
sources java et fournit des remarques
intéressantes sur le code Java.
Développé en Java
Il permet d’indiquer d'éventuels
problèmes comme:
Variables locales non utilisées (Eclipse
possède également cette fonctionnalité)
Des blocs catch vides
Des paramètres inutilisés (Eclipse possède
également cette fonctionnalité)
Des instructions 'if' vides
PMD (2)
Des instructions import en double (deux
fois la même classe, ou l'import d'une
classe appartenant à un paquetage déjà
importé) (Eclipse possède également cette
1 / 28 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !