Débogage / Debug
Définition
processus qui permet de trouver et résoudre un bogue (bug)
Qu'est-ce qu'un bogue ?
Bogue
-
erreur/faiblesse/défaut dans un programme
-
produit des résultats incorrects/inattendus
-
induit des comportements non voulus
Le debug
Tactiques
-
Debug interactif
-
Logs (CLI++)
-
Tests (unitaires, d'integration)
-
Monitoring
Le debug
Il y a des outils !
Le debug
- CLI
-
navigateur
- inspecteur
- console
- debugger
- réseau
- extensions
- debuggers
- autres...
Quelques outils
Le debug
Méthodologie
-
Observer
-
Reproduire
-
Réfléchir <=> Tester
-
Résoudre
Le debug
Résolution
-
Se placer au bon niveau (scope)
-
Masquer !== Résoudre
-
Feature !== Bug
-
Attention aux regressions (test++)
Poser de bonnes questions sur internet
Objectif : obtenir des réponses
Les bonnes questions
La forme
-
Soigner son écriture au maximum
-
Veiller à être aimable
-
Ne rien prendre personnellement
-
Réactivité après 1er message ++
Les bonnes questions
Le fond
-
Décrire ce qu'on cherche à faire (le besoin)
-
Donner du contexte si possible
-
Expliquer ce qu'on a déjà essayé, la démarche, les recherches faites, les pistes qu'on a, les résultats obtenus
Les bonnes questions
A éviter
-
Découper sa question en morceaux
-
Ca marche pas !
-
Est-ce que quelqu'un s'y connait en [techno de votre choix] ?
-
Est-ce que quelqu'un a déjà fait [feature de votre choix] avec [techno de votre choix] ?
-
LES MAJUSCULES
Des outils collaboratifs
-
JsBin
https://jsbin.com/?html,css,js,output -
Replit
https://replit.com/ -
Codepen
https://codepen.io/ -
Fonctions "liveshare" des éditeurs/IDE
-
Autres ?
Sources
Wikipedia
https://fr.wikipedia.org/wiki/Bug_(informatique)
en.wikipedia.org/wiki/Debugging
en.wikipedia.org/wiki/Debugger
en.wikipedia.org/wiki/Software_bug
Ressources
How to debug
https://blog.regehr.org/archives/199
Le cours openClassroom
https://openclassrooms.com/en/courses/7159296-deboguez-l-interface-de-votre-site-internet
Js debugging tips
https://raygun.com/learn/javascript-debugging-tips
Css layout debugging script
https://gist.github.com/addyosmani/fd3999ea7fce242756b1
Ressources
Comment poser les questions de manière intelligente
http://www.linux-france.org/article/these/smart-questions/smart-questions-fr.html
How to be great at asking questions
https://medium.com/@gordon_zhu/how-to-be-great-at-asking-questions-e37be04d0603
Don't just say hello in chats
https://www.nohello.com/
Questions
Merci
Copy of Magento2
By djohn12
Copy of Magento2
- 250