IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Qualimétrie Discussion :

Critères d'évaluation d'outils d'analyse de code Java


Sujet :

Qualimétrie

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    21
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Avril 2008
    Messages : 21
    Points : 16
    Points
    16
    Par défaut Critères d'évaluation d'outils d'analyse de code Java
    Bonjour,

    Je dois faire un comparatif des outils d'analyse de code vérifiant des conventions (codage, nommage, javadoc...).

    Je pense que les deux outils les plus performants dans ce domaine sont Checkstyle et PMD (si il existe des outils plus performants que ceux-là merci de me le signaler).

    Je cherche donc des critères d'évaluation pour comparer et noter PMD et checkstyle.

    Merci d'avance pour votre aide.

  2. #2
    Membre actif Avatar de mOuLi
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2008
    Messages
    170
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Avril 2008
    Messages : 170
    Points : 257
    Points
    257
    Par défaut
    Sur le fond ces outils sont relativement proches dans le sens où ils font de l'analyse statique de code. A noter que PMD inclue un détecteur de copier/coller et je ne crois pas avoir vu la même chose avec Checkstyle.
    Parmi les critères de comparaison, il peut être intéressant de mentionner :
    • intégration avec IDE (avec Eclipse par exemple les 2 fournissent des plugins mais je trouve l'intégration plus réussie pour Checkstyle que pour Findbugs)
    • facilité de customiser les tests (ça peut être associé au premier point si on passe par l'IDE pour celà)
    • facilité d'écrire ses propres tests (je ne l'ai fait qu'avec Chekstyle et je ne sais pas comment c'est fait pour PM).
    En ce qui concerne les outils, il peut être intéressant de mentionner Findbugs qui diffèrent des 2 précédents outils car il analyse le byte-code à partir de patterns connus. Je cite "Il ne se limite pas à une recherche par expressions régulières, il essaye de comprendre ce que le programme veut faire" (voir cet article)

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    21
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Avril 2008
    Messages : 21
    Points : 16
    Points
    16
    Par défaut
    Merci pour ta réponse mOuLi.

    Pour info Checkstyle inclut aussi un détecteur de copier/coller (il suffit d'ajouter la règle correspondante).

    Quant à FindBugs, j'ai eu l'occasion de le tester et il ne correspond pas aux besoins de l'entreprise dans laquelle je fais mon stage.

    Pour l'ajout de nouvelles règles je n'en ai écris une que pour Checkstyle (tout comme toi) ce qui n'a pas été trop difficile. Pour comparer, il faudrait que j essaye d'écrire la même règle avec PMD. Apparemment PMD utiliserait aussi les AST donc ça doit être relativement proche.

    Est-ce que tu connaîtrais des outils qui mixent analyse de code et analyse de dépendances? Une sorte de mix de Checkstyle et JDepend...

  4. #4
    Membre actif Avatar de mOuLi
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2008
    Messages
    170
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Avril 2008
    Messages : 170
    Points : 257
    Points
    257
    Par défaut
    Hélas non
    Pour le moment, je me suis contenté de la génération de rapports en ligne via les plugins Maven.

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    21
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Avril 2008
    Messages : 21
    Points : 16
    Points
    16
    Par défaut
    Ok je te remercie pour tes réponses.

    Je viens d'écrire une règle pour PMD c'est encore plus facile que pour Checkstyle! (Si j'ai mis moins d'une aprem à le faire c'est que c'est vraiment bidon )

  6. #6
    Membre du Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Septembre 2008
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Septembre 2008
    Messages : 99
    Points : 52
    Points
    52
    Par défaut pmd check style
    Bonjour,

    Merci pour votre évalutation concernant CheckStyle et PMD, j'aimerai bien créer mes propres régles mais j'ai pas bien compris le fonctionnement ,est ce que vous pourriez m'expliquer avec un exemple SVP !!!!!!

    Merci d'avance

Discussions similaires

  1. Outils d'Analyse de code
    Par Smyten dans le forum Choisir un environnement de développement
    Réponses: 0
    Dernier message: 15/05/2014, 18h21
  2. Réponses: 22
    Dernier message: 29/05/2011, 20h56
  3. outils pour analyser le code ?
    Par sofiane80 dans le forum Analyse de code
    Réponses: 6
    Dernier message: 07/11/2009, 13h24
  4. analyse de code java
    Par nadsky dans le forum Langage
    Réponses: 1
    Dernier message: 15/09/2007, 18h01
  5. Outil d'analyse de code
    Par Bloon dans le forum Outils
    Réponses: 8
    Dernier message: 07/08/2007, 09h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo