Comment améliorer vos compétences de débogage

Nous écrivons tous du code qui casse à un moment donné. Cela fait partie du processus de développement. Lorsque vous rencontrez une erreur, vous pouvez penser que vous ne savez pas quoi faire. Cependant, même les développeurs les plus expérimentés introduisent des erreurs et des bogues qui cassent leur code. Nous sommes des humains après tout.

L'important est d'apprendre de ces erreurs et d'éviter de les répéter en développant des techniques pour améliorer vos compétences en programmation et en débogage. Les erreurs sont principalement logiques ou syntaxiques. Certains d'entre eux se manifestent via des exceptions ou des plantages tandis que d'autres ne peuvent être observés que lors de l'utilisation du logiciel.

Voici quelques-unes des erreurs commises par les développeurs

Échec de l'enregistrement des messages

L'un des scénarios les plus inutiles que vous puissiez rencontrer est celui où votre programme se bloque et qu'aucun message d'erreur n'indique ce qui ne va pas. La première étape consiste à identifier si le programme plante au démarrage ou pendant l'exécution. Vous pouvez accomplir cela en imprimant un simple message de journal sur le terminal au début de votre code.

Si vous ne voyez pas votre message de journal, votre programme plante probablement lors du chargement et il s'agit probablement d'un problème lié à une dépendance ou à une construction.

Si vous voyez votre message, vous devez vous limiter au voisinage général de l'accident. Le meilleur moyen est de placer stratégiquement certains messages de journal dans votre programme en fonction de la quantité d'informations dont vous disposez sur le chemin d'exécution au moment où il se bloque. Ensuite, tout ce que vous avez à faire est de voir quels messages sont imprimés.

Ne pas lire les messages d'erreur

Les messages d'exception sur le front-end sont généralement affichés sur l'interface utilisateur ou la console développeur. Parfois, ces messages sont visibles dans le backend via le terminal ou via des fichiers journaux. Peu importe où ces erreurs se produisent, les nouveaux développeurs sont intimidés par elles et ne prennent pas le temps de les lire.

C'est la principale raison pour laquelle le débogage prend plus de temps pour de nombreux développeurs. La première chose à faire est de prendre le temps de lire le message d'erreur devant vous, de le laisser pénétrer et de le traiter minutieusement.

Échec de lecture des fichiers journaux système

Certains programmes génèrent des fichiers journaux ou écrivent dans le journal des événements système. Ces journaux contiennent souvent des informations utiles. Même s'il ne vous dit pas exactement ce qui ne va pas, il peut y avoir un message d'avertissement ou d'erreur ou même un message de réussite fournissant un indice sur ce qui s'est passé avant que l'erreur ne se produise.

Échec de l'écriture des journaux de suivi

Le traçage suit le flux et les données de votre programme. L'écriture de messages de trace dans tout votre programme simplifie le processus de débogage. Les journaux de suivi sont un moyen simple de suivre l'exécution du programme tout au long de l'exécution de votre application.

Ne pas apporter de modifications incrémentielles, les construire et les tester

De nombreux développeurs écrivent de gros morceaux de code avant de le construire et de le tester. Le temps de recherche des bogues augmente proportionnellement à la quantité de code qui a été modifiée. Vous devez vous efforcer d'apporter des modifications incrémentielles, de les créer et de les tester aussi souvent que possible. Cela garantira que vous ne vous retrouverez pas dans une situation où beaucoup de code a été écrit avant de découvrir que votre programme ne fonctionne pas.

Souvent, je vais même refactoriser mon code pour simplifier ce que j'ai écrit.

Échec de l'écriture de l'automatisation des tests

Les tests unitaires et l'automatisation des tests de bout en bout vous permettent de détecter les erreurs potentielles au fur et à mesure qu'elles se produisent. L'une des raisons pour lesquelles le code existant est interrompu est que les développeurs refactorisent leur code lorsqu'ils ont une faible couverture de test, ce qui signifie que toutes les modifications ne sont pas testées automatiquement.

Ne pas utiliser la méthode d'élimination

Si vous ne parvenez pas à identifier la cause première de votre problème, vous devez utiliser la méthode d'élimination. Vous pouvez commenter les nouveaux blocs de code pour voir si les erreurs s'arrêtent. L'élimination des blocs de code vous aidera à vous rapprocher du diagnostic du problème.

Vous pouvez former une certaine hypothèse et essayer de la prouver ou de la réfuter. Plusieurs fois, une simple hypothèse peut vous empêcher de trouver des bogues.

Copier et coller à partir de StackOverflow

Souvent, les développeurs copient et collent du code à partir d'un débordement de pile sans comprendre ce qu'il fait. Cela a tellement d'effets indésirables. Tout d'abord, il est important que vous prêtiez attention à ce qui se passe dans votre application.

Plus souvent que je ne le souhaiterais, lorsque j'écris une question sur StackOverflow et que je réfléchis à la manière de l'articuler efficacement, je finis par répondre à ma propre question!

De même, parfois, lorsque je parle à d'autres membres de l'équipe, je finis par répondre à ma propre question. Cela se produit parce que cela vous oblige à réfléchir à votre solution.

Ne pas résoudre à nouveau leur problème

L'une des techniques de débogage les plus réussies que j'ai trouvées est d'essayer de parcourir votre solution encore et encore et, dans certains cas, d'essayer de réimplémenter certaines fonctionnalités à partir de zéro. Cela vous oblige à trouver des problèmes potentiels en recréant votre implémentation.

Ne pas revenir en arrière

Normalement, si vous pouvez isoler les symptômes dans une zone spécifique, vous pouvez commencer à remonter la pile d'appels pour vérifier toutes les variables et les valeurs attendues. Cela peut rapidement vous amener à découvrir des parties de votre programme où les choses se comportent de manière inattendue.

Ne pas apprendre le débogueur

Enfin, le meilleur investissement que vous puissiez faire en vous-même est d'apprendre à utiliser un débogueur. Tous les IDE sont livrés avec de puissants débogueurs. Ils suivent les mêmes concepts de base. Ils vous permettent d'arrêter par programme l'exécution de votre application, soit au démarrage, soit dans une partie spécifique du flux du programme.

Il existe également une tonne d'outils de débogage qui peuvent vous aider dans ce processus.

Si cet article vous a été utile, ??? et suivez-moi sur Twitter.

Extensions GitHub pour booster votre productivité

Voici les extensions GitHub que j'utilise. Ils vous permettront d'améliorer votre productivité sur GitHub. Veuillez partager votre… medium.freecodecamp.org