O que significa o símbolo de sublinhado antes de um import em Go?
Olá! Comecei a estudar Go e me deparei com uma construção que não entendi. No código de outra pessoa, vi este import:
```go
import (
"fmt"
_ "image/png"
"os"
)
```
O símbolo de sublinhado (`_`) antes da string `"image/png"` me confunde. Eu sei que em Go, imports não utilizados causam erro de compilação, mas aqui claramente é algo diferente.
Tentei remover este import, e o código parou de funcionar — o programa não conseguia decodificar imagens PNG. No entanto, não estou chamando nenhuma função do pacote `image/png` diretamente. Como isso funciona? Para que serve um import assim, se não usamos explicitamente as funções do pacote?
Na documentação, encontrei uma menção sobre funções `init()`, mas não entendi completamente como isso se relaciona. Explique, por favor, para que serve o sublinhado antes do import, e em quais casos isso pode ser útil. Existem algumas armadilhas ou melhores práticas?
Obrigado!
<<>>
O que é o "identificador vazio" em um import?
O símbolo de sublinhado (