Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
se:fehlerbehandlung [2009-01-30 14:38] stefan angelegt |
se:fehlerbehandlung [2014-04-05 11:42] (aktuell) |
||
---|---|---|---|
Zeile 4: | Zeile 4: | ||
* Überprüfe jeden Rückgabewert von Funktionen. | * Überprüfe jeden Rückgabewert von Funktionen. | ||
* Behandle Fehler so früh wie möglich (-> je dichter am Auftreten umso klarer die Behandlung und somit der Code) | * Behandle Fehler so früh wie möglich (-> je dichter am Auftreten umso klarer die Behandlung und somit der Code) | ||
+ | * Schreibe [[unittests|Tests]] für jeden Fehler, den du findest. | ||
===== Exception Safety ===== | ===== Exception Safety ===== | ||
- | **nach {[quellen:Goodliffe2008|S. 94]}** | + | **nach \cite[S. 94]{Goodliffe2006}** |
* Code muss laufen, egal, welche Exceptions auftreten | * Code muss laufen, egal, welche Exceptions auftreten | ||
* **Exception-neutraler** Code wirft alle Exceptions weiter an den Aufrufer | * **Exception-neutraler** Code wirft alle Exceptions weiter an den Aufrufer | ||
Zeile 16: | Zeile 17: | ||
===== Fehlermeldungen ===== | ===== Fehlermeldungen ===== | ||
+ | **nach \cite[S. 101]{Goodliffe2006}** | ||
* Fehlermeldungen müssen die Sprache der Benutzer sprechen (nicht die der Entwickler) | * Fehlermeldungen müssen die Sprache der Benutzer sprechen (nicht die der Entwickler) | ||
* keine kryptischen Ausdrücke verwenden | * keine kryptischen Ausdrücke verwenden | ||
Zeile 21: | Zeile 23: | ||
* Warnings und Error unterscheiden | * Warnings und Error unterscheiden | ||
* Stelle nur Fragen an den Benutzer (z.B. Fortfahren ja/nein), wenn er auch sicher die Konsequenzen versteht | * Stelle nur Fragen an den Benutzer (z.B. Fortfahren ja/nein), wenn er auch sicher die Konsequenzen versteht | ||
- | * |