Code review

Qu’est-ce qu’une code review ?

Selon vous, lorsqu’un écrivain rédige un livre, publie-t-il son brouillon sans aucune relecture ? Non, ce n’est pas concevable. Combien de fois avez-vous entendu votre professeur de français vous répéter : “N’oubliez pas de vous relire avant de me rendre votre copie”. Le faisiez-vous ? Pas toujours je pense (En tous cas, pas moi !).

Lorsqu’on développe, on doit faire la même chose pour notre code : effectuer une relecture ; que l’on appelle “code review” (revue de code).

A quoi sert une code review ?

Comme lorsque vous écrivez un article, une relecture de votre part ou même d’une tierce personne vous permet d’éviter les erreurs. Pour une revue de code, c’est exactement la même chose.

Quand nous travaillons sur une tâche, notamment dans le développement, il nous arrive d’avoir ce que l’on appelle “la tête dans le guidon”. Notre réflexion avance, nous écrivons l’algorithme comme nous l’imaginons, on test le rendu, ça fonctionne, et on continue … Une fois le “rush” terminé et que nos tests fonctionnent, nous avons envie de voir notre développement prendre vie. Cependant, notre métier nous oblige à penser à plusieurs notions durant un développement :

  • La sécurité
  • La maintenabilité
  • La complexité
  • L’évolutivité
De son côté, numerobis pense à tout.

En partant de ce postulat, il me paraît important que chaque développeur fasse relire son code tout comme nous faisons relire une publication.

L’intérêt est d’apporter “un œil neuf sur ce chantier, une vision jeune”. Que ce soit par un développeur novice ou expérimenté, il va forcément pouvoir commenter et critiquer (critique ≠ négatif ) les différents points que j’ai pu citer au dessus.

Par l’expérience algorithmique, notre “reviewer” va peut-être nous éviter des pièges sur la maintenabilité de notre code, son évolutivité mais aussi sa complexité. Un fan de la sécurité va, par exemple, tout passer au peigne fin pour ne rien laisser passer.

Vous l’aurez compris, on ne peut pas développer tout seul dans son coin et prétendre avoir produit du code d’une extrême qualité. Surtout aujourd’hui, a l’heure où les technologies évoluent à la vitesse de la lumière ! Le seul moyen de réussir un chantier en 3 mois serait-il donc la potion magique ? Evidemment que non !

En revanche, avec les bons outils en main (des design patterns), les bonnes pratiques (comme le principe SOLID) et façons de faire, on parvient toujours à faire des merveilles.

Alors faites relire votre code ! Oui, mais comment faire une code review ?