Qu’est-ce que la revue de code?
La revue de code (de l’anglais : « code review ») est un examen systématique du code source d’un logiciel.
Il peut être comparé au processus ayant lieu dans un comité de lecture, l’objectif étant de trouver des bugs ou des vulnérabilités potentielles ou de corriger des erreurs de conception afin d’améliorer la qualité, la maintenabilité et la sécurité du logiciel.
Une revue de code peut s’appuyer sur la vérification (manuelle ou automatisée) du respect d’un ensemble de règles de programmation.
Si la revue de code est depuis longtemps reconnue comme un moyen performant d’améliorer la qualité du logiciel, les organisations qui ont mis en place une démarche systématique ont longtemps été minoritaires1. Elle devient de plus en plus une étape à part entière dans tout processus de développement logiciel en particulier dans les méthodes agiles comme Extreme Programming.
Wikipedia
Objectifs d’une revue de code
- Améliorer la qualité du code
- Favoriser la collaboration, le travail en équipe (appropriation du code par l’équipe)
- Appliquer un standard
- Détecter et corriger les défauts (bugs mais aussi lisibilité) au plus tôt dans le cycle de vie du code pour économiser les coûts
- Formation des développeurs
Le Clean Code et les smells ( le code qui sent mauvais )
Dans son livre Clean Code, Robert C. Martin explique plusieurs erreurs à ne pas faire lors de l’écriture de code. Cette liste est nommée smells, elle représente une série de règles à respecter afin d’éviter que le code écrit sente mauvais. Tiré de la table des matières du livre, voici cette liste de smells.
Liste complète des smells
Smells à considérer pour la revue de code
Exercice de revue de code
Temps restant avant la remise sur LÉA.
Un cycle a une durée de 25 minutes.
Le temps restant est projeté à l’écran visible pour toute la classe. (25 minutes: http://e.ggtimer.com/25minutes)
Voici les étapes proposées pour l’exercice :
Étapes préalables
- (1 min.) Identifier une équipe avec qui réaliser la revue de code.
- (1 min.) Identifier une fonctionnalité qui sera soumise à une revue de code (liste de lecture ou page d’accueil avec commentaires).
- (1 min.) Échanger le code (par courriel ou clé USB).
Revue de code
- (12 min.) Individuellement et en silence complet, faire la lecture du code et identifier les « smells ».
- Dans un fichier texte, répertorier les améliorations possibles.
- Nom du fichier, No de ligne, Code du smell, description de la solution proposée, Initiales
- (5 min.) Fusionner les listes des smells trouvés.
- (5 min.) Présenter et expliquer la liste à l’autre équipe.
Identifier une autre équipe et
répéter le cycle de 25 minutes.
Livraison de la revue de code
Créer une archive pour la revue de code contenant les fichiers évalués et les rapports produits.
Dans le rapport, bien identifier les noms et rôles e tous les développeurs impliqués. À déposer sur LÉA.
Références
- Clean code en pratique
- http://www.slideshare.net/jeromeavoustin/clean-code-en-pratique-14732075
- Pourquoi la revue de code est importante (et permet réellement de gagner du temps !)
- https://fr.atlassian.com/agile/code-reviews
- EBooker/Writing Clean Code Books at master · tusharsappal/EBooker · GitHub
- https://github.com/tusharsappal/EBooker/tree/master/Writing%20Clean%20Code%20Books
- Code Smell — Wikipédia
- https://fr.wikipedia.org/wiki/Code_Smell
- Code Smells — Sourcemaking.com
- https://sourcemaking.com/refactoring/smells
- Code Smells — CodingHorror
- http://blog.codinghorror.com/code-smells/
Laisser un commentaire
Participez-vous à la discussion?N'hésitez pas à contribuer!