ExpertiDict

Go · Essencial · Português · Técnico

tratamento de erro

/tɾa.taˈmẽ.tu d͡ʒi ˈe.ʁu/substantivo

Idioma em que funções devolvem um error como último retorno e o chamador o verifica com if err != nil, em vez de usar exceções.

Onde usar

Domina o código Go e aparece em quase toda linha de I/O. Em code review, o importante é não ignorar o erro com _ e acrescentar contexto antes de repassá-lo.

Em código

f, err := os.Open("dados.txt")
if err != nil {
  return fmt.Errorf("abrindo: %w", err)
}
defer f.Close()

Exemplos

Metade do meu código Go é tratamento de erro, e tudo bem.

Faltou tratamento de erro nessa chamada; o retorno está sendo ignorado.

Cuidado

Não confunda com try/catch: o erro é um valor comum, e esquecer de checá-lo não gera aviso do compilador.

Sinônimos

checagem de err

Antônimos

exceção

Veja também

Todos os termos de Go