Kapitel 9. Fehler
Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com
Die Fehlerbehandlung ist eine der größten Herausforderungen für Entwickler, die von anderen Sprachen zu Go wechseln. Für diejenigen, die an Ausnahmen gewöhnt sind, wirkt der Ansatz von Go anachronistisch. Doch dem Ansatz von Go liegen solide Prinzipien der Softwareentwicklung zugrunde. In diesem Kapitel lernst du, wie du in Go mit Fehlern umgehen kannst. Du wirst auch einen Blick auf panic
und recover
werfen, Go's System zur Behandlung von Fehlern, die die Ausführung stoppen sollten.
Wie man mit Fehlern umgeht: Die Grundlagen
Wie in Kapitel 5 kurz beschrieben, behandelt Go Fehler, indem es einen Wert vom Typ error
als letzten Rückgabewert einer Funktion zurückgibt. Dies ist eine Konvention, die jedoch so stark ist, dass sie niemals verletzt werden sollte. Wenn eine Funktion wie erwartet ausgeführt wird, wird nil
als Fehlerparameter zurückgegeben. Wenn etwas schief läuft, wird stattdessen ein Fehlerwert zurückgegeben. Die aufrufende Funktion überprüft dann den Fehlerrückgabewert, indem sie ihn mit nil
vergleicht, den Fehler behandelt oder selbst einen Fehler zurückgibt. Eine einfache Funktion mit Fehlerbehandlung sieht so aus:
func
calcRemainderAndMod
(
numerator
,
denominator
int
)
(
int
,
int
,
error
)
{
if
denominator
==
0
{
return
0
,
0
,
errors
.
New
(
"denominator is 0"
)
}
return
numerator
/
denominator
,
numerator
%
denominator
Get Go lernen, 2. Auflage now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.