Les conventions de codage

Les conventions de codage en Java

Ce tuto vous aide à connaitre les bonnes pratiques ainsi que les conventions de codage en Java

accès rapide

Les conventions de codage en Java

La démo

Les conventions de codage en Java SE sont des principes directeurs cruciaux qui définissent la manière dont le code Java doit être structuré pour favoriser la cohérence et la compréhension.

Il en a plusieurs convention de codage recommandés par Oracle que vous pouvez trouver en accédant à ce lien ; https://www.oracle.com/java/technologies/javase/codeconventions-contents.html

Voici quelques-unes de ces conventions avec des exemples :

1- Noms de Variables Significatifs :

// Mauvais exemple 
int x = 10; 
// Bon exemple 
int nombreUtilisateurs = 10;

2 – Conventions de Casse :

// Mauvais exemple 
String nomUTILISATEUR = "John"; 
// Bon exemple 
String nomUtilisateur = "John";
2.1. Variables :
  • Commencez par une lettre minuscule.
  • Utilisez camelCase pour des noms significatifs.
  • Évitez les caractères spéciaux et les abréviations ambigües.
int ageUtilisateur;
String nomComplet;
2.2. Classes :
  • Commencez par une majuscule en PascalCase.
  • Utilisez des noms descriptifs.
class Utilisateur {
    // ...
}
2.3. Méthodes :
  • Commencez par une minuscule en camelCase.
  • Utilisez des noms descriptifs.
void calculerTotal() {
    // ...
}
2.4. Constantes :
  • En majuscules avec des underscores pour séparer les mots.
static final int VALEUR_MAXIMALE = 100;

3. Une classe publique doit être placée dans un fichier du même nom :

La règle selon laquelle une classe publique doit être placée dans un fichier portant le même nom est une convention de codage Java largement acceptée et recommandée pour la lisibilité et la maintenance du code. Cette convention facilite la recherche des classes dans un projet et aide à maintenir une structure de fichier cohérente.

❌Mauvais exemple :

// Dans le fichier MyClass.java
public class AutreClasse {
    // ...
}

✔️Bon exemple :

// Dans le fichier AutreClasse.java
public class AutreClasse {
    // ...
}

4. Indentation Appropriée :

// Mauvais exemple
for (int i=0;i<5;i++) {
System.out.println(i);}

// Bon exemple
for (int i = 0; i < 5; i++) {
    System.out.println(i);
}

En suivant ces conventions, les développeurs créent un code Java uniforme, facile à lire et à comprendre. Cela facilite la collaboration au sein de l’équipe et la maintenance du code au fil du temps.

Exercices d’application

La démo

Exercice 1 :

Corrigez les conventions de nommage du code suivant.

class maClasse {
    int mon_entier = 42;
    String maChaine = "Java";
    double ma_valeur_double = 3.14;

    void afficherValeurs() {
        System.out.println("Entier : " + mon_entier);
        System.out.println("Chaine : " + maChaine);
        System.out.println("Valeur double : " + ma_valeur_double);
    }
}

Correction

class MaClasse {
    int monEntier = 42;
    String maChaine = "Java";
    double maValeurDouble = 3.14;

    void afficherValeurs() {
        System.out.println("Entier : " + monEntier);
        System.out.println("Chaine : " + maChaine);
        System.out.println("Valeur double : " + maValeurDouble);
    }

Explication :

  • Le nom de la classe est passé de maClasse à MaClasse pour suivre la convention PascalCase.
  • Les noms des variables ont été modifiés pour utiliser camelCase (mon_entier à monEntier, ma_valeur_double à maValeurDouble).
  • Ces modifications suivent les conventions de nommage Java pour rendre le code plus lisible et cohérent.

Exercice 2 :

Corrigez les conventions de formatage du code suivant.

public class exempleFormatage {
public static void main(String[] args){int a=5;int b=10;int somme=a+b;
System.out.println("La somme est : "+somme);}
}

Correction

public class ExempleFormatage {
    public static void main(String[] args) {
        int a = 5;
        int b = 10;
        int somme = a + b;
        System.out.println("La somme est : " + somme);
    }
}

Explication :

  • Le nom de la classe est passé de exempleFormatage à ExempleFormatage pour suivre la convention PascalCase.
  • Le code a été indenté correctement pour améliorer la lisibilité.
  • Ces changements rendent le code conforme aux conventions de nommage et de formatage Java.

Exercice 3 :

Indiquez si les noms de variables suivants sont valides ou non selon les conventions de codage Java :

  • nomClient
  • 3emeLigne
  • total$Montant
  • prix_unitaire
  • stockDisponible

Correction

  1. nomClient : Valide.
  2. 3emeLigne : Non valide. Les noms de variables ne peuvent pas commencer par un chiffre selon les conventions de codage Java.
  3. total$Montant : Techniquement permis mais non valide selon les conventions de codage Java en raison de l’utilisation de caractères spéciaux.
  4. prix_unitaire : Techniquement permis mais non valide selon les conventions de codage Java. Il est préférable d’utiliser prixUnitaire pour suivre la convention camelCase.
  5. stockDisponible : Valide.

Exercice 4 :

Indiquez si les noms de classes suivants sont valides ou non selon les conventions de codage Java :

  1. ClientService
  2. 3emeClasse
  3. Article$Info
  4. Produit_unitaire
  5. GestionStock

Correction

  1. ClientService : Valide. Suit la convention PascalCase.
  2. 3emeClasse : Non valide. Les noms de classe ne peuvent pas commencer par un chiffre selon les conventions de codage Java.
  3. Article$Info : Techniquement permis mais non valide selon les conventions de codage Java en raison de l’utilisation de caractères spéciaux.
  4. Produit_unitaire : Techniquement permis mais non valide selon les conventions de codage Java. Il est préférable d’utiliser ProduitUnitaire pour suivre la convention PascalCase.
  5. GestionStock : Valide. Suit la convention PascalCase.

Exercice 5 :

Indiquez si les noms de méthodes suivants sont valides ou non selon les conventions de codage Java :

  1. calculerSomme
  2. afficher_Resultat
  3. getInfoPersonne
  4. 3emeMethode
  5. modifier$Valeur

Correction

  1. calculerSomme : Valide.
  2. afficher_Resultat : Techniquement permis mais non valide selon les conventions de codage Java.
  3. getInfoPersonne : Valide.
  4. 3emeMethode : Non valide. Les noms de méthodes ne peuvent pas commencer par un chiffre.
  5. modifier$Valeur : Techniquement permis mais non valide selon les conventions de codage Java.

Installer des plugins pour améliorer la qualité de notre code

La démo

Voici des exemples de plugins que vous pouvez utiliser dans Eclipse et IntelliJ IDEA pour respecter les normes de codage Java :

Eclipse :

  1. Checkstyle Plugin : Intégrez l’outil Checkstyle à Eclipse pour vérifier votre code par rapport à des normes de codage. Cela vous permettra de détecter les violations des conventions de nommage et d’autres problèmes de qualité de code.
  2. PMD Plugin : Utilisez le plugin PMD pour Eclipse afin d’intégrer l’outil PMD à votre environnement de développement. PMD analyse votre code Java et identifie les problèmes potentiels, y compris les violations des conventions de codage.
  3. SonarLint Plugin : Installez le plugin SonarLint dans Eclipse pour bénéficier de l’analyse statique en temps réel de votre code Java. SonarLint détecte les erreurs, les bugs, les vulnérabilités de sécurité et les odeurs de code, y compris les problèmes de nommage.

IntelliJ IDEA :

  1. CheckStyle-IDEA Plugin : Intégrez Checkstyle directement dans IntelliJ IDEA pour vérifier votre code par rapport aux normes de codage. Ce plugin vous aide à détecter les violations des conventions de nommage et à maintenir la qualité de votre code Java.
  2. SonarLint Plugin : Installez le plugin SonarLint dans IntelliJ IDEA pour bénéficier de l’analyse statique en temps réel de votre code Java. SonarLint identifie les problèmes de qualité du code, y compris les violations des conventions de codage, les bugs et les vulnérabilités de sécurité.
  3. FindBugs-IDEA Plugin : Intégrez l’outil FindBugs à IntelliJ IDEA à l’aide du plugin FindBugs-IDEA. FindBugs analyse votre code Java et identifie les bogues potentiels, y compris les problèmes de nommage et autres problèmes de qualité du code.

En utilisant ces plugins dans Eclipse et IntelliJ IDEA, vous pourrez maintenir des normes élevées de qualité de code et respecter les conventions de codage dans vos projets Java

Utilisation de commentaires

La démo

À titre informatif, un commentaire sert à intégrer des informations au sein d’un programme. Ces informations n’ont pas d’impact sur l’exécution du programme, mais elles revêtent toute leur importance en termes de compréhension lors de la lecture du code.

Types de commentaires en Java :

  1. Commentaires sur une ligne :
  • Utilisés pour des commentaires courts sur une seule ligne.
  • Ils commencent par // et s’étendent jusqu’à la fin de la ligne.
// Ceci est un commentaire sur une ligne
int x = 5; // Ceci est un commentaire sur une ligne après une instruction

2. Commentaires multilignes :

  • Utilisés pour des commentaires plus longs ou des commentaires sur plusieurs lignes.
  • Ils sont encadrés par /* et */.
/* 
   Ceci est un commentaire multiligne
   Il peut s'étendre sur plusieurs lignes
*/

3. Javadoc :

  • Utilisés pour générer une documentation automatique à l’aide de l’outil Javadoc.
  • Ils sont encadrés par /** et */.
  • Ils peuvent inclure des balises spéciales telles que @param, @return, @throws pour documenter les paramètres, la valeur de retour et les exceptions lancées par une méthode.
/**
 * Cette méthode calcule la somme de deux nombres.
 * @param a Le premier nombre.
 * @param b Le deuxième nombre.
 * @return La somme de a et b.
 */
public int calculerSomme(int a, int b) {
    return a + b;
}

Pour utiliser Javadoc, suivez ces étapes simples :

Étape 1 : Écrire les commentaires Javadoc

Ajoutez des commentaires Javadoc juste avant la déclaration de la classe, de la méthode ou du champ que vous souhaitez documenter. Utilisez les balises Javadoc appropriées pour décrire la classe, les méthodes, les paramètres, la valeur de retour, etc. Voici un exemple :

/**
 * Cette classe représente un objet Rectangle.
 */
public class Rectangle {
    private int largeur;
    private int hauteur;
    
    /**
     * Crée un nouveau rectangle avec la largeur et la hauteur spécifiées.
     * @param largeur La largeur du rectangle.
     * @param hauteur La hauteur du rectangle.
     */
    public Rectangle(int largeur, int hauteur) {
        this.largeur = largeur;
        this.hauteur = hauteur;
    }
    
    /**
     * Calcule et renvoie l'aire du rectangle.
     * @return L'aire du rectangle.
     */
    public int calculerAire() {
        return largeur * hauteur;
    }
}

Étape 2 : Générer la documentation avec Javadoc

Une fois que vous avez ajouté des commentaires Javadoc à votre code, vous pouvez générer la documentation à l’aide de l’outil Javadoc fourni avec le kit de développement Java (JDK).

Utilisation d’un IDE :

La plupart des environnements de développement intégrés (IDE) comme IntelliJ IDEA, Eclipse et NetBeans ont des fonctionnalités intégrées pour générer la documentation Javadoc. Vous pouvez généralement trouver cette fonctionnalité dans les options de génération de projet ou de code.

Utilisation en ligne de commande :

Ouvrez une fenêtre de terminal, accédez au répertoire racine de votre projet et exécutez la commande suivante :

javadoc -d dossierSortie -sourcepath dossierSource cheminVersVosFichiers.java

Remplacez dossierSortie par le chemin où vous souhaitez enregistrer la documentation générée, dossierSource par le chemin où se trouvent vos fichiers source Java et cheminVersVosFichiers.java par le chemin vers vos fichiers source Java (vous pouvez spécifier plusieurs fichiers source séparés par des espaces).

Étape 3 : Consulter la documentation générée

Après avoir généré la documentation Javadoc, vous pouvez ouvrir le fichier HTML généré (par exemple, index.html) dans votre navigateur web pour consulter la documentation. Vous verrez une documentation claire et structurée de votre code, basée sur les commentaires Javadoc que vous avez ajoutés.

Dans ce tuto , nous avons défini les conventions de codage ainsi que les commentaires en Java.

Espérons bien que ce tuto vous a plu. Rattachez vos ceinture pour commencer à coder avec ce langage à partir des tutos suivants 🙂 🙂

Dans ce tuto , nous avons appris les bonnes pratiques ainsi que les conventions de codage en Java

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *