Documentation et commentaires
- Commentaire : texte dans le code destiné uniquement au développeur, ignoré par le compilateur ou l'interpréteur.
- Documentation : ensemble d'informations structurées décrivant le programme, ses modules, fonctions, interfaces et utilisation.
Les commentaires font partie de la documentation interne, tandis que la documentation peut être externe ou générée automatiquement.
Pourquoi documenter et commenter
Lisibilité
- Facilite la compréhension du code pour soi-même ou pour un autre développeur
- Permet de savoir pourquoi et comment le code fonctionne
Maintenance
- Code ancien ou complexe devient plus facile à modifier
- Aide à éviter de casser des fonctionnalités existantes
Collaboration
- Dans un projet à plusieurs développeurs, les commentaires guident la lecture
- Les conventions de documentation uniformes facilitent l'intégration
Réutilisation et formation
- Permet de réutiliser un module sans lire tout le code
- Sert de support pour la formation des nouveaux développeurs
Types de commentaires
Commentaires sur une ligne
- Très court, généralement au-dessus ou à côté d'une instruction
- Exemple C++ :
- int total = a + b; // Addition des deux nombres
- Exemple Free Pascal :
- total := a + b; { Addition des deux nombres }
Commentaires multi-lignes / blocs
Pour expliquer des sections plus longues ou complexes. En langage de programmation C :
- /* Calcul de la moyenne :
- On additionne toutes les notes et on divise par le nombre total */
En langage de programmation Pascal :
- { Calcul de la moyenne :
- On additionne toutes les notes et on divise par le nombre total }
Commentaires de documentation
- Utilisés pour générer automatiquement des fichiers de documentation
- Exemple en Java (Javadoc) :
- Exemple en Free Pascal avec Doxygen :
Bonnes pratiques pour commenter
- Commenter le "pourquoi", pas le "quoi"
- Mauvais : i := i + 1; { Ajoute 1 à i }
- Bon : i := i + 1; { Passe à l'élément suivant dans la boucle }
- Commentaires courts et clairs
- Trop longs = difficile à lire
- Mettre à jour les commentaires
- Ne jamais laisser un commentaire obsolète ou trompeur
- Utiliser des conventions uniformes
- Style d'écriture cohérent
- Par exemple : TODO, FIXME, NOTE
- Documenter les interfaces publiques
- Paramètres, valeurs de retour, exceptions possibles
Documentation externe
- Fichiers séparés décrivant le projet
- Exemple :
- README.md
- MANUAL.txt
- Documentation HTML générée (Doxygen, Javadoc)
- Contenu typique :
- Objectifs du projet
- Organisation des fichiers
- Instructions de compilation
- Exemples d'utilisation
Exemples pratiques
Exemple C++
Exemple Free Pascal
Stratégies avancées
Marquer les zones à revoir
- TODO: → tâche à compléter
- FIXME: → code à corriger
- NOTE: → explication supplémentaire
Documenter les algorithmes complexes
- Diagrammes, pseudo-code ou commentaires explicatifs détaillés
- Exemple : complexité algorithmique, cas particuliers
Automatisation
Utiliser des outils comme Doxygen, Javadoc, Sphinx pour générer la documentation à partir des commentaires
Avantages de la documentation et des commentaires
| Avantage | Explication |
|---|---|
| Lisibilité | Compréhension immédiate du code |
| Maintenabilité | Facilite la correction et la modification |
| Réutilisabilité | Permet de réutiliser les fonctions sans lire tout le code |
| Collaboration | Tous les développeurs parlent le même langage |
Traçabilité Historique des modifications et des intentions
Transition vers la POO
- Les classes et objets nécessitent une documentation plus structurée
- Chaque méthode et attribut doit être documenté
- Les cadres d'applications modernes permettent de générer la doc automatiquement à partir des commentaires
Exemple : Documenter une classe TCompteBancaire avec ses méthodes RetirerArgent et DeposerArgent.
Résumé
- Les commentaires et la documentation améliorent la qualité du code
- Toujours commenter :
- Pourquoi le code existe
- Interface et utilisation des fonctions/classes
- Utiliser un style cohérent et des outils pour générer la documentation
- Mise à jour régulière pour éviter les commentaires obsolètes
Règle d'or : un code sans commentaires et documentation est lisible seulement pour son auteur et seulement pendant quelques semaines.
Dernière mise à jour : Jeudi, le 1er janvier 2026