L'état d'esprit du debug
L'approche scientifique pour trouver et corriger les bugs
⏱ Estim. ~8 min
01 · Lire
Ton code va casser. Le code de tout ingénieur casse. La différence entre un débutant et un pro, ce n'est pas que les pros écrivent du code sans bugs — c'est qu'ils savent trouver et corriger les bugs de manière systématique.
Debug, ce n'est pas essayer au hasard. Ce n'est pas changer des trucs en espérant que ça marche. C'est la méthode scientifique : observer, supposer, tester, conclure.
Les ingénieurs qui ont l'air d'être des magiciens du debug ne sont pas plus intelligents — ils suivent simplement un processus au lieu de paniquer.
💡 Imagine çaDebug, c'est comme être détective. Un crime (le bug) a eu lieu. Tu rassembles des preuves (messages d'erreur, logs), tu formes une théorie (hypothèse), tu testes (change une seule chose), et soit tu résous l'affaire, soit tu formes une nouvelle théorie. Tu n'attrapes jamais quelqu'un au hasard en espérant que ça marche.
02 · Étape par étape
Le processus de debug — suis ces étapes à chaque bug rencontré
1. REPRODUCE (reproduire)
Peux-tu faire apparaître le bug de manière fiable ? Si c'est aléatoire, cherche un problème de timing ou d'état. Sans reproduction, tu ne peux pas être sûr d'avoir corrigé. Note les étapes exactes qui déclenchent le bug.
2. ISOLATE (isoler)
Où exactement ça plante ? Réduis à un fichier, une fonction, une ligne précise. Utilise console.log ou les messages d'erreur pour repérer l'endroit. Plus ta zone d'enquête est petite, plus vite tu trouves le problème.
3. HYPOTHESIZE (formuler une hypothèse)
À ton avis, qu'est-ce qui cause ça ? Forme une théorie avant de changer quoi que ce soit. « Je pense que le bug vient du fait qu'on accède à l'index 0 alors que le tableau est vide. » Avoir une théorie te garde concentré dans ton enquête.
4. TEST (tester)
Change une chose pour tester ton hypothèse. Ne change jamais plusieurs choses d'un coup — si tu changes trois trucs et que le bug disparaît, tu ne sais pas lequel l'a corrigé. Cette discipline te sauve des heures plus tard.
5. FIX (corriger)
Applique le correctif à partir de ce que tu as appris. Un bon correctif traite la cause racine, pas seulement le symptôme. Si un tableau vide plante les utilisateurs, ne te contente pas de masquer l'erreur — gère correctement le cas du tableau vide.
6. VERIFY (vérifier)
Le bug d'origine peut-il encore arriver ? As-tu cassé autre chose ? Teste le correctif, puis teste ce qui est autour. Un correctif qui crée de nouveaux bugs, ce n'est pas un vrai correctif.
03 · Lire
On va appliquer le processus en pratique. Tu hérites d'une app boguée — une API de comptage de visiteurs. Elle plante quand les utilisateurs frappent l'endpoint /api/stats. Ton job : suivre le processus de debug pour trouver le bug.
04 · Pratique terminal
Étape 1 : REPRODUCE — lis les logs d'erreur pour comprendre ce qui ne va pas. Les messages d'erreur sont tes meilleurs amis. Ils te disent souvent exactement ce qui s'est passé et où.
(Cette section est interactive — active JavaScript pour l'utiliser.)
05 · Pratique terminal
Étape 2 : ISOLATE — l'erreur pointe count ligne 7 comme undefined. Cette valeur vient de getVisitorCount(). Lis le code de la fonction pour voir ce qui cloche.
(Cette section est interactive — active JavaScript pour l'utiliser.)
06 · Lire
Voici les règles d'or du debug qui te feront gagner d'innombrables heures. Colle-les à ton écran s'il le faut.
Points clés
- Ne change pas plusieurs choses d'un coup — tu ne sauras pas ce qui a corrigé
- Lis le message d'erreur — il te dit souvent ce qui ne va pas et où
- Fais confiance à l'erreur, pas à tes suppositions sur l'endroit du bug
- Tous les ingénieurs débuggent. Les ingénieurs séniors le font juste de manière plus systématique.
07 · Compléter
La première étape du debug, c'est de _____ le bug de manière fiable.
08 · Quiz
Quelle est la première étape du debug ?
- Reproduire le bug de manière fiable
- Modifier le code en espérant que ça marche
- Demander à Claude de corriger
- Supprimer le fichier et recommencer
Autres leçons de ce chapitre
⚠ L'expérience interactive complète nécessite JavaScript. Active-le et recharge la page.
※ Ce site est un projet éducatif indépendant — pas un produit officiel d'Anthropic. Claude™ est une marque déposée d'Anthropic, PBC.