<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=utf-8"> <TITLE>•</TITLE> <META NAME="GENERATOR" CONTENT="OpenOffice.org 1.9.104 (Linux)"> <META NAME="AUTHOR" CONTENT="Bekrar"> <META NAME="CREATED" CONTENT="20050816;5510000"> <META NAME="CHANGEDBY" CONTENT="Bekrar"> <META NAME="CHANGED" CONTENT="20050816;6020000"> <STYLE> <!-- @page { size: 8.27in 11.69in; margin: 0.98in } P { margin-bottom: 0.08in; direction: ltr; color: #000000; widows: 2; orphans: 2 } P.western { font-family: "Arial", sans-serif; font-size: 10pt; so-language: fr-FR } P.cjk { font-family: "Times New Roman", serif; font-size: 10pt } P.ctl { font-family: "Times New Roman", serif; font-size: 10pt; so-language: ar-SA } A:link { color: #0000ff } A.western:link { font-family: "Arial", sans-serif } --> </STYLE> </HEAD> <BODY LANG="en-US" TEXT="#000000" LINK="#0000ff" DIR="LTR"> <UL> <LI><P LANG="fr-FR" CLASS="western" STYLE="margin-bottom: 0in"><FONT COLOR="#0000ff"><FONT FACE="Arial, sans-serif"><U><A CLASS="western" HREF="http://pmd.sourceforge.net/"><B>PMD</B></A></U></FONT></FONT><B><FONT COLOR="#000000"> </FONT></B>: c’est un outil<FONT COLOR="#000000"> qui parcours le code source Java et recherche des problèmes potentiels. </FONT> </P> </UL> <P LANG="fr-FR" CLASS="western" STYLE="margin-left: 0.25in; margin-bottom: 0in"> PMD possède une liste de règles à vérifier, ces règles sont regroupées comme suit :</P> <P LANG="fr-FR" CLASS="western" STYLE="margin-left: 0.25in; margin-bottom: 0in"> <BR> </P> <P LANG="fr-FR" CLASS="western" STYLE="margin-left: 0.25in; margin-bottom: 0in"> <BR> </P> <UL> <LI><P LANG="fr-FR" CLASS="western" STYLE="margin-top: 0.19in; margin-bottom: 0in"> <FONT COLOR="#0000ff"><FONT FACE="Arial, sans-serif"><U><A CLASS="western" HREF="http://pmd.sourceforge.net/rules/index.html#Finalizer_Rules">Règles dédiées au Finalizers</A></U></FONT></FONT> : Ce groupe contient les règles en rapport avec le codage des « <B>Finalizers</B> ».</P> <LI><P LANG="fr-FR" CLASS="western" STYLE="margin-bottom: 0in"><FONT COLOR="#0000ff"><FONT FACE="Arial, sans-serif"><U><A CLASS="western" HREF="http://pmd.sourceforge.net/rules/index.html#Unused_Code_Rules">Règles dédiées au code non utilisé</A></U></FONT></FONT> : Ce groupe contient une collection de règles qui ont pour but de trouver le code non utilisé.</P> <LI><P LANG="fr-FR" CLASS="western" STYLE="margin-bottom: 0.19in"><FONT COLOR="#0000ff"><FONT FACE="Arial, sans-serif"><U><A CLASS="western" HREF="http://pmd.sourceforge.net/rules/index.html#Controversial_Rules">Règles controversées</A></U></FONT></FONT> : Contient les règles qui ne jouissent pas d’une unanimité sur l’intérêt de leur application, elles sont séparées des autres règles pour pouvoir donner à l’utilisateurs de PMD la possibilité des les appliquer ou pas.</P> </UL> <P LANG="fr-FR" CLASS="western" STYLE="margin-left: 1.35in; margin-top: 0.19in; margin-bottom: 0.19in"> Parmi les règles contenus dans ce groupe :</P> <UL> <UL> <UL> <UL> <UL> <LI><P LANG="fr-FR" CLASS="western" STYLE="margin-top: 0.19in; margin-bottom: 0in"> AtLeastOneConstructor : cette règle vérifie si la classe possède un constructeur au minimum.</P> <LI><P LANG="fr-FR" CLASS="western" STYLE="margin-bottom: 0.19in"> SingularField : un champs de classe utilisé uniquement par une seule méthode peut être remplacé par une variable locale à la méthode.</P> </UL> </UL> </UL> </UL> </UL> <UL> <LI><P LANG="fr-FR" CLASS="western" STYLE="margin-bottom: 0.19in"><FONT COLOR="#0000ff"><FONT FACE="Arial, sans-serif"><U><A CLASS="western" HREF="http://pmd.sourceforge.net/rules/index.html#Optimization_Rules">Règles d’optimisation</A></U></FONT></FONT> : Ce groupe de règles à pour but d’imposer les bonnes pratiques de codage qui ont pour but d’optimiser les performances du code, par exemple :</P> </UL> <UL> <UL> <UL> <UL> <UL> <LI><P LANG="fr-FR" CLASS="western" STYLE="margin-bottom: 0in">AvoidInstantiatingObjectsInLoops : Détecte les endroits où il existe des instanciation d’objets dans une boucle.</P> <LI><P LANG="fr-FR" CLASS="western" STYLE="margin-bottom: 0.19in"> UseStringBufferForStringAppends : Détecte les endroit du code où il y a une concaténation de chaînes de caractère et conseille d’utiliser des StringBuffers pour faire cette opération car c’est plus rapide à l’exécution.</P> </UL> </UL> </UL> </UL> </UL> <UL> <LI><P LANG="fr-FR" CLASS="western" STYLE="margin-bottom: 0in"><FONT COLOR="#0000ff"><FONT FACE="Arial, sans-serif"><U><A CLASS="western" HREF="http://pmd.sourceforge.net/rules/index.html#Basic_Rules">Règles basiques</A></U></FONT></FONT> : Ce groupe contient un ensemble de bonnes pratiques que chaque un se doit de respecter.</P> <LI><P LANG="fr-FR" CLASS="western" STYLE="margin-bottom: 0in"><FONT COLOR="#0000ff"><FONT FACE="Arial, sans-serif"><U><A CLASS="western" HREF="http://pmd.sourceforge.net/rules/index.html#Design_Rules">Règles de conception</A></U></FONT></FONT> : Ce groupe contient un certain nombre de règles qui détectent les zones floues de la conception du code audité.</P> <LI><P LANG="fr-FR" CLASS="western" STYLE="margin-bottom: 0in"><FONT COLOR="#0000ff"><FONT FACE="Arial, sans-serif"><U><A CLASS="western" HREF="http://pmd.sourceforge.net/rules/index.html#Strict_Exception_Rules">Règles relatives aux exceptions</A></U></FONT></FONT> : Ce groupe contient les règles relatives à la capture et au renvoi d’exceptions.</P> <LI><P LANG="fr-FR" CLASS="western" STYLE="margin-bottom: 0in"><FONT COLOR="#0000ff"><FONT FACE="Arial, sans-serif"><U><A CLASS="western" HREF="http://pmd.sourceforge.net/rules/index.html#JavaBean_Rules">Règles relatives aux JavaBeans</A></U></FONT></FONT> : Ce groupe contient les règles qui détectent les JavaBeans qui ne respectent pas les règles de codage de ce type de classes.</P> <LI><P LANG="fr-FR" CLASS="western" STYLE="margin-bottom: 0in"><FONT COLOR="#0000ff"><FONT FACE="Arial, sans-serif"><U><A CLASS="western" HREF="http://pmd.sourceforge.net/rules/index.html#java_lang_String_Rules">Règles relatives aux java.lang.String</A></U></FONT></FONT> : Ce groupe contient les règles qui démontrent les différents problèmes qui peuvent apparaître lors de la manipulation des objets de type java.lang.String.</P> <LI><P LANG="fr-FR" CLASS="western" STYLE="margin-bottom: 0in"><FONT COLOR="#0000ff"><FONT FACE="Arial, sans-serif"><U><A CLASS="western" HREF="http://pmd.sourceforge.net/rules/index.html#Code_Size_Rules">Règles relatives à la taille du code</A></U></FONT></FONT> : Ce groupe contient les règles qui contrôlent la taille des différentes composantes du code.</P> <LI><P LANG="fr-FR" CLASS="western" STYLE="margin-bottom: 0in"><FONT COLOR="#0000ff"><FONT FACE="Arial, sans-serif"><U><A CLASS="western" HREF="http://pmd.sourceforge.net/rules/index.html#Import_Statement_Rules">Règles relatives au imports</A></U></FONT></FONT> : Ce groupe contient les règles relatives à l’optimisation des imports.</P> <LI><P LANG="fr-FR" CLASS="western" STYLE="margin-bottom: 0in"><FONT COLOR="#0000ff"><FONT FACE="Arial, sans-serif"><U><A CLASS="western" HREF="http://pmd.sourceforge.net/rules/index.html#Clone_Implementation_Rules">Règles relative à l’utilisation de la méthode Clone()</A></U></FONT></FONT> : Ce groupe contient les règles qui détectent les éventuels problèmes qui peuvent être rencontrés lors d’une mauvaise utilisation de la méthode <B>Clone()</B>. </P> <LI><P LANG="fr-FR" CLASS="western" STYLE="margin-bottom: 0in"><FONT COLOR="#0000ff"><FONT FACE="Arial, sans-serif"><U><A CLASS="western" HREF="http://pmd.sourceforge.net/rules/index.html#Naming_Rules">Règles de nommage</A></U></FONT></FONT> : Ce groupe contient les règles qui s’occupent de vérifier les différentes règles de nommage des composantes du code.</P> <LI><P LANG="fr-FR" CLASS="western" STYLE="margin-bottom: 0in"><FONT COLOR="#0000ff"><FONT FACE="Arial, sans-serif"><U><A CLASS="western" HREF="http://pmd.sourceforge.net/rules/index.html#Java_Logging_Rules">Règles relatives aux logs</A></U></FONT></FONT> : Ce groupe contient les règles qui régissent les logs de l’application.</P> <LI><P LANG="fr-FR" CLASS="western" STYLE="margin-bottom: 0.19in"><FONT COLOR="#0000ff"><FONT FACE="Arial, sans-serif"><U><A CLASS="western" HREF="http://pmd.sourceforge.net/rules/index.html#Braces_Rules">Règles relatives aux accolades</A></U></FONT></FONT> : Contient un groupe de règles relatives à la disposition des accolades.</P> </UL> <P LANG="fr-FR" CLASS="western" STYLE="margin-left: 0.25in; margin-bottom: 0in"> <BR> </P> <P LANG="fr-FR" CLASS="western" STYLE="margin-bottom: 0in"><BR> </P> </BODY> </HTML>