RSS Feed

Analyse de la qualité du code source Java

19 January 2005 par SeB Pas de commentaire »

Pour perdurer, un projet doit être maintenable. Ce point est assuré par un code source clair et une documentation complète et précise. Avec les outils actuels pour générer de la documentation à partir du code source, tout l’enjeu repose sur le code source du projet.

Il existe des outils pour faire un audit du code source d’un projet Java.

Critères de qualité

Voici une liste non-exhaustive de critères de qualité d’un code source :

  • lisibilité
  • uniformisation des conventions de codage
    • nommage
    • indentation
    • organisation
    • documentation
  • couplage minimum (module indépendants)
  • complexité cyclomatique minimum
  • commentaires JavaDoc maximum

Avant d’analyser le modèle de conception, les répartitions des classes au sein des packages, il se révèle très souvent important de respecter les conventions de codage. Pour cela il existe un outils extrêmement pratique :

  • CheckStyle

CheckStyle

Présentation

CheckStyle est un outil développé en Java qui analyse le code source d’un projet Java et génère un rapport de conformité aux convention de codage. Il est développé par Oliver Burn. Il est distribué sous licence GNU Lesser General Public License.

Utilisation

Cet outil analyse le code source d’un projet et propose de ressortir les résultats sous la forme :

  • un fichier texte
  • un fichier XML
  • une page HTML
  • d’alerte intégrées aux IDE

Par exemple pour utiliser en ligne de commande, il faut exécuter la commande suivante :

java com.puppycrawl.tools.checkstyle.Main -c docs/sun_checks.xml -r repertoire_des_sources/

Il est également possible de définir une tâche Ant pour générer les métriques automatiquement.

Résultats

  • Métriques générales
    • nombre de fichiers
    • nombre d’erreurs
  • Métriques sur les classes
    • nombre d’erreurs
    • liste des erreurs avec la ligne dans la code source

Interprétation

Moins il y a d’erreur et plus le code source est conforme aux conventions de codage établies. Par défaut ce sont les conventions de codage de Sun qui sont fournies. Elles sont très restrictives et ont été définies à partir :

Cet outil est donc pratique pour vérifier le respect des conventions de codage. Les classes non conformes seront identifiées par un nombre d’erreur supérieur à 0.

 

Réagissez