Code Review est l'examen systématique du code source par les développeurs pour identifier les défauts et améliorer la qualité du produit. Selon SmartBear, 2025, Code Review réduit le nombre de défauts de 30 à 60 % et accélère l'intégration des nouveaux membres de l'équipe. Dans le développement mobile, la revue inclut obligatoirement la vérification de l'architecture, des performances et de la sécurité sur les plateformes Android et iOS.
Points clés
Code Review est le processus d'examen du code source par un ou plusieurs développeurs avant son intégration dans la branche principale du projet. L'objectif de la revue n'est pas seulement de trouver des bugs, mais aussi d'améliorer l'architecture, d'assurer la conformité aux normes de l'équipe et de diffuser les connaissances. Contrairement à l'analyse automatique (linters), la revue de code est effectuée par un humain et évalue la lisibilité, la logique et les décisions architecturales.
Selon Google Engineering Practices, 2024, Code Review a deux objectifs également importants : protéger la base de code des défauts et former les développeurs par le feedback. Dans les projets mobiles, la revue inclut obligatoirement la vérification des frameworks (UIKit, SwiftUI, Jetpack Compose), de la gestion de la mémoire et du traitement des requêtes réseau.
Code Review dans GitLab et GitHub est organisé respectivement via Merge Request et Pull Request. Chaque MR/PR contient un diff, des commentaires de ligne, des discussions et des statuts de vérification. Selon Microsoft Research (2023), les équipes qui pratiquent la revue régulière publient 40 % de bugs critiques en moins en production.
Les premières Code Review formelles sont apparues chez IBM dans les années 1970 en tant qu'« inspections structurées » avec des checklists étape par étape et des protocoles. Dans les années 2000, avec la propagation de Git et des équipes distribuées, la revue a évolué vers un format asynchrone via Pull Request. GitHub (2008) a fait du PR un phénomène de masse. Le Code Review moderne est un processus informel et asynchrone axé sur la rapidité et l'apprentissage, et non sur la bureaucratie.
Code Review est classé en quatre types principaux selon le processus et l'implication des participants. Formel (revue asynchrone) — vérification via MR/PR sans communication synchrone, le plus courant dans les équipes distribuées. Informel — quick CR, lorsqu'un développeur s'approche d'un autre et lui demande de regarder le code pendant 5 minutes.
Selon Microsoft Research, 2023, la programmation en binôme (Pair Programming) signifie que deux développeurs travaillent sur un même écran, chaque ligne de code est écrite en temps réel avec une revue « à la volée ». Over-the-shoulder — un développeur regarde l'écran d'un autre et commente le code sans processus formel. Walkthrough — l'auteur du code guide un groupe de développeurs à travers les modifications, en expliquant chaque décision.
| Type de revue | Format | Temps pour 100 lignes | Meilleur pour |
|---|---|---|---|
| Asynchrone | Via MR/PR | 15–30 min | Équipes distribuées |
| Pair Programming | Synchrone | 0 min (en cours) | Fonctionnalités complexes |
| Over-the-shoulder | Informel | 5–10 min | Consultation rapide |
| Walkthrough | Groupe | 30–60 min | Changements architecturaux |
La checklist Code Review aide le relecteur à ne pas manquer des aspects crucialement importants. Première catégorie — exactitude et architecture : la solution correspond-elle à la tâche, y a-t-il une complexité inutile, les patrons sont-ils correctement choisis (MVP, MVVM, Clean Architecture) ? Deuxième catégorie — style et formatage : le code suit-il le style de l'équipe (Kotlin Code Style, Swift Style Guide) ?
Selon Thoughtbot Code Review Guide, 2024, le troisième bloc — tests : des tests unitaires sont-ils écrits, couvrent-ils les cas limites, les tests existants passent-ils toujours ? Quatrième — sécurité : n'y a-t-il pas de tokens codés en dur, de clés API, d'injections SQL, de fuites mémoire ? Cinquième — performances : les coroutines/RxJava sont-elles utilisées correctement, n'y a-t-il pas de blocage du thread UI, pas d'allocations excessives ?
Code Review exige du relecteur un équilibre entre minutie et rapidité. La règle principale est de vérifier le code par petites portions. Volume optimal — 200–400 lignes de modifications par session. Selon Google Research (2022), la revue de plus de 500 lignes perd en efficacité : le nombre de défauts manqués augmente linéairement avec le volume de modifications. Deuxième règle — commencez par l'architecture, puis la logique, puis les détails.
Selon SmartBear, 2025, les commentaires doivent être spécifiques : pas « c'est mauvais » mais « cette méthode viole SRP — extrayez la logique de validation dans une classe séparée ». Chaque commentaire est une suggestion d'amélioration, pas une critique. Si le code est correct mais que le style ne correspond pas aux préférences du relecteur — laissez sans commentaire. Le relecteur doit approuver une solution correcte même s'il l'aurait écrite différemment.
Recevoir Code Review est une compétence non moins importante que la revue de code. L'auteur doit être ouvert aux commentaires et les voir comme une opportunité d'améliorer la solution. Première règle — ne prenez pas les commentaires comme une critique personnelle. Code Review vérifie le code, pas le développeur. Deuxième — si un commentaire n'est pas clair, demandez des éclaircissements plutôt que de corriger immédiatement.
Selon LeadDev, 2024, avant d'envoyer en revue, l'auteur doit vérifier son propre code : exécuter les tests, parcourir la checklist, s'assurer qu'il n'y a pas de logs de débogage ni de code commenté. Le MR/PR doit contenir une description claire avec le contexte des modifications. Meilleure est la description, plus rapide et productive sera la revue.
Un aspect clé de Code Review est la sécurité psychologique dans l'équipe. Si un développeur craint les critiques sévères ou les moqueries, il cachera les problèmes plutôt que de les discuter. Google Project Aristotle (2017) a montré : les équipes avec une sécurité psychologique élevée sont 25 % plus productives. Règles : critiquez le code, pas l'auteur ; posez des questions au lieu d'accuser ; remerciez pour les bonnes solutions.
Règle clé pour l'auteur — ne vous précipitez pas à fermer les commentaires. Si le relecteur a demandé des modifications, elles doivent être apportées, pas simplement répondre « ok » et laisser sans correction. Après avoir effectué les corrections — demandez à nouveau la revue. GitLab et GitHub prennent en charge Re-request Review pour notifier le relecteur.
L'automatisation de Code Review réduit la charge des développeurs en éliminant la vérification des règles formelles. Les linters (ktlint, SwiftLint, ESLint) vérifient le style de code, le formatage et les erreurs de base. Les analyseurs statiques (Detekt, SonarQube, Infer) trouvent les bugs potentiels, les fuites mémoire et les problèmes de sécurité avant que le code n'arrive à la revue humaine.
Selon detekt Documentation, 2024, dans les pipelines CI/CD, les linters et analyseurs s'exécutent automatiquement lors de la création d'un MR/PR. Si la vérification échoue, le MR est bloqué par le bouton Merge. Cela garantit que le code arrivant à la revue humaine a déjà passé les vérifications de base. Le relecteur se concentre sur l'architecture, la logique et la lisibilité, pas sur les espaces et l'indentation.
// Exemple de configuration detekt pour projet Android
build.gradle.kts (app):
detekt {
config = files("detekt-config.yml")
buildUponDefaultConfig = true
allRules = false
autoCorrect = true
debug = false
parallel = true
}
tasks.named("preMerge") {
dependsOn("detekt")
dependsOn("ktlintCheck")
}
Les outils de Code Review dans le développement mobile se divisent en outils basés sur plateforme (GitLab, GitHub, Bitbucket) et spécialisés (Gerrit, Reviewable, Crucible). GitLab et GitHub fournissent des fonctionnalités intégrées : comparaison de diff, commentaires de ligne, threads, statuts Approve/Changes Requested, intégration CI/CD. Le choix de l'outil dépend de la taille de l'équipe et de la politique de revue.
Selon GitLab Docs, 2025, pour les grandes équipes (50+ développeurs), Gerrit offre un contrôle plus strict : vérification obligatoire via CI avant la fusion, approbations pondérées (Verified + Code-Review) et droits d'accès détaillés. Pour les équipes petites et moyennes, GitLab et GitHub sont le choix optimal : la configuration des Required Approvals, Code Owners et Merge Checks prend quelques minutes.
Les erreurs dans Code Review réduisent son efficacité et démotivent l'équipe. Première — vérifier un volume trop important de modifications à la fois. Quand un MR contient plus de 2000 lignes, le relecteur manque jusqu'à 70 % des défauts. Deuxième — commentaires subjectifs non basés sur le style de code ou l'architecture. Les commentaires comme « j'aurais écrit autrement » sans justification n'apportent aucune valeur.
Selon Google Engineering Practices, 2024, la troisième erreur — ignorer les tests. Si un MR n'inclut pas de tests pour la nouvelle fonctionnalité, le relecteur doit les demander, pas approuver avec « plus tard ». Quatrième — vérifier en fin de journée ou de sprint quand l'attention est dispersée. Le meilleur moment pour la revue est la première moitié de la journée, avec 30 à 60 minutes dédiées sans changement de tâche.
Sécurité de la revue — la cinquième erreur courante : les relecteurs ne vérifient pas si le code contient des secrets codés en dur, des WebView non sécurisées avec JavaScript ou des bibliothèques vulnérables. Dans les projets mobiles, c'est critique : une fuite de clé API peut compromettre tout le backend.
Pour les équipes distantes, Code Review est le principal canal de transmission des connaissances. Un format asynchrone via MR avec des délais clairs est recommandé : maximum 24 heures pour la revue. Utilisez des enregistrements d'écran (Loom) pour les discussions architecturales complexes. Dans les équipes distribuées, la documentation écrite des décisions dans les commentaires MR est particulièrement importante pour que le contexte ne se perde pas lors du changement de fuseau horaire.
Questions fréquentes
Code Review est la vérification du code par les développeurs avant son intégration dans la branche principale. Il est nécessaire pour détecter les défauts, améliorer l'architecture, assurer le style de code et partager les connaissances dans l'équipe. Selon SmartBear, la revue réduit les défauts de 30 à 60 %.
Optimalement 200–400 lignes de modifications par session. Google Research a montré qu'au-delà de 500 lignes, l'efficacité de la revue diminue proportionnellement. Si le MR est plus volumineux, la tâche doit être décomposée en plusieurs MR connexes.
Commencez petit : vérifiez les tests, la documentation, le style de code. Passez progressivement à la logique et à l'architecture. Posez des questions plutôt que des affirmations — « Pourquoi cette approche a-t-elle été choisie ? » apprend plus vite que « C'est faux ». Les erreurs sont considérées comme normales.
Les linters (ktlint, SwiftLint, ESLint) vérifient le style de code. Les analyseurs statiques (detekt, SonarQube, Infer) trouvent les bugs et les fuites. En CI/CD, ces outils s'exécutent lors de la création d'un MR et bloquent la fusion en cas d'erreur. L'humain ne vérifie que la logique et l'architecture.
Considérez les commentaires comme un retour sur le code, pas comme une évaluation de vous en tant que développeur. Si un commentaire n'est pas clair, demandez des éclaircissements. Si vous n'êtes pas d'accord, argumentez, mais soyez prêt à accepter la décision du relecteur. La qualité de l'équipe est plus importante que les préférences individuelles.
Résumé
Nous développerons une application mobile clé en main
IT Sectr crée des applications iOS et Android pour les startups et les entreprises depuis 2017. Nous vous conseillerons et vous proposerons la meilleure solution.
Lisez aussi