Junior — Middle
Cum este implementată gestionarea erorilor în limbajul Go, similar cu mecanismul de excepții din alte limbaje de programare?
sobes.tech AI
Răspuns de la AI
În limbajul Go, gestionarea erorilor se realizează prin valori de întoarcere, nu prin excepții, ca în multe alte limbaje. Funcțiile și metodele returnează de obicei două valori: rezultatul și eroarea (error). Dacă eroarea nu este nil, înseamnă că a avut loc o eroare și trebuie gestionată.
Exemplu de gestionare a erorilor în Go:
package main
import (
"errors"
"fmt"
)
func divide(a, b float64) (float64, error) {
if b == 0 {
return 0, errors.New("împărțire la zero")
}
return a / b, nil
}
func main() {
result, err := divide(10, 0)
if err != nil {
fmt.Println("Eroare:", err)
return
}
fmt.Println("Rezultat:", result)
}
Astfel, în Go nu există construcția try-catch; în schimb, erorile sunt transmise și verificate explicit, ceea ce favorizează o gestionare a erorilor mai clară și controlată.