Junior — Middle
Πώς υλοποιείται η διαχείριση σφαλμάτων στη γλώσσα Go, παρόμοια με τον μηχανισμό εξαιρέσεων σε άλλες γλώσσες προγραμματισμού;
sobes.tech AI
Απάντηση από AI
Στη γλώσσα Go, η διαχείριση σφαλμάτων υλοποιείται μέσω των τιμών επιστροφής, και όχι μέσω εξαιρέσεων, όπως σε πολλές άλλες γλώσσες. Οι συναρτήσεις και οι μέθοδοι επιστρέφουν συνήθως δύο τιμές: το αποτέλεσμα και το σφάλμα (error). Αν το σφάλμα δεν είναι nil, σημαίνει ότι συνέβη ένα σφάλμα και πρέπει να διαχειριστεί.
Παράδειγμα διαχείρισης σφαλμάτων σε Go:
package main
import (
"errors"
"fmt"
)
func divide(a, b float64) (float64, error) {
if b == 0 {
return 0, errors.New("διαίρεση με το μηδέν")
}
return a / b, nil
}
func main() {
result, err := divide(10, 0)
if err != nil {
fmt.Println("Σφάλμα:", err)
return
}
fmt.Println("Αποτέλεσμα:", result)
}
Έτσι, στη Go δεν υπάρχει κατασκευή try-catch, αντ' αυτού, τα σφάλματα μεταδίδονται και ελέγχονται ρητά, κάτι που προάγει μια πιο σαφή και ελεγχόμενη διαχείριση σφαλμάτων.