Menu
Coddy logo textTech

L'identificateur blanc `_`

Fait partie de la section Logique & Flux du Journey GO de Coddy — leçon 55 sur 68.

Parfois, vous devez importer un paquet non pas pour utiliser ses fonctions ou variables exportées, mais pour déclencher ses effets secondaires. L'effet secondaire le plus courant est l'exécution de la fonction init du paquet, qui s'exécute automatiquement lorsque le paquet est importé.

Go fournit l'identificateur vide _ à cet effet. Lorsque vous importez un paquet avec l'identificateur vide, Go importe le paquet et exécute tout code d'initialisation, mais ne vous oblige pas à utiliser l'un de ses identificateurs exportés.

import _ "database/sql/driver"

Ceci est particulièrement utile lorsque vous avez besoin qu'un package s'enregistre lui-même auprès d'un autre système ou effectue des tâches de configuration, mais que vous n'appelez directement aucune de ses fonctions dans votre code. Sans l'identificateur blanc, Go vous donnerait une erreur de compilation pour l'importation d'un package inutilisé.

L'identifiant vide indique à Go : « Importe ce package pour ses effets secondaires, mais je ne le référencerai pas directement dans mon code. » Cela permet de garder vos imports propres tout en obtenant le comportement d'initialisation dont vous avez besoin.

quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Aide-mémoire

Utilisez l'identifiant vide _ pour importer des packages pour leurs effets secondaires sans utiliser leurs fonctions exportées :

import _ "database/sql/driver"

Ceci importe le package et exécute son code d'initialisation sans vous obliger à utiliser l'un de ses identifiants exportés. Utile lorsque les packages doivent s'enregistrer auprès d'autres systèmes ou effectuer des tâches de configuration.

Essayez vous-même

Cette leçon ne comprend pas de défi de code.

quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Logique & Flux