Menu
Coddy logo textTech

O Identificador em Branco `_`

Parte da seção Lógica & Fluxo do Journey de GO da Coddy — lição 55 de 68.

Às vezes você precisa importar um pacote não para usar suas funções ou variáveis exportadas, mas para disparar seus efeitos colaterais. O efeito colateral mais comum é a execução da função init do pacote, que é executada automaticamente quando o pacote é importado.

O Go fornece o identificador em branco _ para este propósito. Quando você importa um pacote com o identificador em branco, o Go importa o pacote e executa qualquer código de inicialização, mas não exige que você use nenhum de seus identificadores exportados.

import _ "database/sql/driver"

Isso é particularmente útil quando você precisa que um pacote se registre em outro sistema ou execute tarefas de configuração, mas você não chama diretamente nenhuma de suas funções em seu código. Sem o identificador em branco, o Go daria um erro de compilação por importar um pacote não utilizado.

O identificador em branco diz ao Go: "Importe este pacote por seus efeitos colaterais, mas não o referenciarei diretamente no meu código." Isso mantém seus imports limpos enquanto ainda obtém o comportamento de inicialização que você precisa.

quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Folha de consulta

Use o identificador em branco _ para importar pacotes por seus efeitos colaterais sem usar suas funções exportadas:

import _ "database/sql/driver"

Isso importa o pacote e executa seu código de inicialização sem exigir que você use nenhum de seus identificadores exportados. Útil quando os pacotes precisam se registrar em outros sistemas ou realizar tarefas de configuração.

Experimente você mesmo

Esta lição não inclui um desafio de código.

quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Lógica & Fluxo