dedlfix: Wann wirft man eine Exception

Beitrag lesen

Tach!

Ansonsten gäbe es vielleicht die Möglichkeit, den gesamten Programmfluss in einen einzigen Try-Block einzufassen und den anschließenden Catch-Block die "oberste" Exception fangen zu lassen. So könntest Du alle Exceptions abfangen, die keiner speziellen Behandlung bedürfen, was in vielen Fällen ausreichen dürfte.

Das kommt drauf an, wie man "ausreichend" definiert. Eine ungefangene Exception bedeutet immer Programmabbruch. Das dürfte aus Anwendersicht eher "ungenügend" sein.

Den Gedanken hatte ich auch schon. Das setzt aber voraus, dass der gesamte Code in einen try passt. Wenn man irgendwas nochmal zusätzlich kapseln möchte funktioniert es schon wieder nicht. Dann hätte man pro Kapselung nochmal einen try.
Bei der Funktion habe ich mir noch keine Meinung gebildet. Die kannte ich aber in der Tat nicht - danke!

Die ist auch eher als allerletzter Notnagel zu verstehen, ähnlich wie set_error_handler() für herkömmliche Fehler. Allerdings stoppt die Ausführung des Scripts nicht nach dem Ausführen des Errorhandler (bei weniger schwerwiegenden Meldungsklassen). Auf auftretende Fehler sollte man, soweit möglich, vor Ort reagieren und einen möglichen alternativen Programmzweig ausführen, der allen Seiten etwas bringt. Der oberste Fehlerhandler kann nicht viel mehr als das Auftreten für den Administrator dokumentieren und eine allgemeine Tröstmeldung an den Anwender geben. In der Regel wird man sogar nicht mal wissen, wie weit Aufgabe und Ausgabe gediehen sind, um sie einigermaßen ordentlich abzuschließen.

dedlfix.