"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Qual é o objetivo das importações de sublinhado no Go?

Qual é o objetivo das importações de sublinhado no Go?

Publicado em 2024-12-21
Navegar:656

What's the Purpose of Underscore Imports in Go?

Compreendendo as instruções de importação de sublinhado

No mundo da programação Go, o caractere de sublinhado ( _ ) que precede uma instrução de importação tem um significado específico. Vamos explorar seu significado e uso.

O objetivo das importações de sublinhado

O sublinhado (_ ) em uma instrução de importação indica que o pacote é importado apenas por seus efeitos colaterais. Ele não importa nenhuma função, método ou variável do pacote.

Efeitos colaterais em pacotes Go

Alguns pacotes Go têm funções de inicialização (normalmente chamadas init() ) que executam ações quando o pacote é importado. Essas ações podem incluir o registro de drivers de banco de dados personalizados, a inicialização de variáveis ​​globais ou a configuração de registro.

Importação de sublinhado para efeitos colaterais

Para importar um pacote para seus efeitos colaterais e nada mais, o identificador de sublinhado é usado como um nome de pacote explícito na instrução de importação. Por exemplo, considere o trecho de código de go-sqlite3:

import (
    "database/sql"
    "fmt"
    _ "github.com/mattn/go-sqlite3"
    "log"
    "os"
)

Nesse caso, a importação de sublinhado de "github.com/mattn/go-sqlite3" registra o driver sqlite3 com a biblioteca sql padrão. Isso permite que você use sqlite3 como uma conexão de banco de dados em seu código sem precisar importar nenhuma função desse pacote.

Registrando o driver SQLite3

No caso do go-sqlite3, o seguinte código de inicialização é executado quando o pacote é importado:

sql.Register("sqlite3", &SQLiteDriver{})

Este registro permite que você use sqlite3 assim:

db, err := sql.Open("sqlite3", "./foo.db")

Conclusão

As instruções de importação de sublinhado em Go são uma maneira conveniente de importar um pacote apenas por seus efeitos colaterais. Eles permitem que você aproveite as rotinas de inicialização de pacotes sem importar explicitamente funções ou variáveis. Ao compreender a finalidade e o uso das importações de sublinhado, você pode gerenciar com eficácia as dependências de pacotes e os efeitos colaterais em seus projetos Go.

Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3