(Deutsch weiter unten!)
For the Tracker part of the Software I decided to use return values rather than exception handling with TRY/CATCH, because of the following two reasons:
1) One of the reasons for using exception handling with try/catch is the avoidance of large “error handling trees”, which at a function call hierarchy of only a few levels quickly becomes cluttered.
Example: The bottom function knows 2 error conditions.
The above must handle these two errors and has 3 error conditions itself.
Theoretically the next function above must now handle 6 errors …
Since the tracker has “only” about four levels with probably “only” two error conditions (success, failure) and …
2) exception handling with try/catch creates additional overhead…
I will use return values for this part of the software.
####################
Ich habe mich entschieden für den Tracker keine Fehlerbehandlung mit TRY/CATCH sondern mit Rückgabewerten einzusetzen. Dies hat folgende zwei Gründe:
1) Der Grund für den Einsatz von einer Fehlerbehandlung mit try/catch ist unter anderem die Vermeidung großer “Fehlerbehandlungsbäume”, die bei einer Funktionsaufrufshierarchie von nur einigen Ebenen schnell unübersichtlich wird.
Beispiel: Die Unterste Funktion kennt 2 Fehlerzustände.
Die darüber muss diese beiden Fehler behandeln und hat selbst 3 Fehlerzustände.
Die darüber muss nun theoretisch 6 Fehler behandeln…
Da der Tracker “nur” ca. vier Ebenen haben wird mit vorraussichtlich “nur” jeweils zwei Fehlerzuständen (Erfolg,Misserfolg) und…
2) die Fehlerbehandlung mit try/catch zusätzlichen overhead produziert…
werde ich für diesen Teil der Software Rückgabewerte einsetzen.
Tags: Exception handling, Fehlerbehandlung, tracker, try/catch