Quando precisamos encerrar nossos programas em Go de forma abrupta, podemos utilizar a
função panic. Quando invocada, a execução do programa é interrompido
e finalizado. Qualquer trecho de código posterior à chamada da função não será executado.
Sintaxe
panic(s string)
Onde
s: mensagem de erro
Ex 1:
package main
import "fmt"
func main() {
fmt.Println("Olá mundo")
panic ("Pânico!!")
fmt.Println("Você não verá isso")
}
Saída
panic: Pânico!!
goroutine 1 [running]:
main.main()
/home/main.go:9 +0x25
Tendo conhecimento da função panic, podemos declarar nossas validações e encerrar nossos
programas de acordo com argumentos aguardados.
Ex 2:
package main
import "fmt"
func main() {
a,b := 10,0
if(b == 0){
panic("divisão por zero");
}else{
fmt.Print(a/b);
}
}
Saída
panic: divisão por zero
Como boa prática, não utilize o panic para validações básicas como entrada de dados do usuário
cujo erro é esperado. Nesses casos, use valores de retorno de erro para tratamento.