Résumé

Effectué

Comme vous l’avez vu, la gestion des erreurs et la journalisation dans Go ne sont pas identiques aux processus dans d’autres langages de programmation. Tout d’abord, l’approche de la gestion des erreurs de Go est simple. Vous utilisez une condition if et la fonction que vous appelez doit retourner plusieurs valeurs. Par convention, la dernière valeur retournée est l’erreur. Si la variable d’erreur retourne nil, il n’y a pas d’erreur. Si la valeur n’est pas nil, cela signifie un échec. Vous pouvez propager l’erreur jusqu’à la pile en retournant simplement l’erreur une nouvelle fois, et vous pouvez inclure davantage de contexte si nécessaire.

Vous pouvez créer des variables d’erreur à réutiliser comme valeurs de retour pour les messages d’erreur courants dans vos programmes.

Vous devez également savoir quand paniquer. Nous avons déjà abordé le fonctionnement de panic et recover. Ces fonctions ne doivent être utilisées que lorsque vous avez explicitement besoin que votre programme s’arrête. Il peut arriver que votre programme cesse de répondre même si vous gérez correctement les erreurs. Cela doit toutefois constituer l’exception, et non la règle.

Enfin, nous avons abordé le fonctionnement de la journalisation dans Go, et vous avez vu comment utiliser la bibliothèque standard. Outre l’impression des journaux dans la console, vous pouvez envoyer des journaux à un fichier en vue d’un traitement ultérieur, puis les envoyer à un emplacement centralisé. Lorsque votre codebase se développe, vous devez peut-être effectuer d’autres opérations, telles que la définition des niveaux de journalisation ou la configuration de différentes sorties. Ces tâches ne sont pas prises en charge dans la bibliothèque standard. Vous devez utiliser un framework de journalisation tel que zerolog.

Ce module est concis, mais veillez à bien comprendre les concepts. Ils seront utiles lorsque vous aurez besoin de résoudre des problèmes dans vos programmes.