Einzelnen Beitrag anzeigen

Benutzerbild von sx2008
sx2008

Registriert seit: 16. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#6

AW: Wann werfe ich welche Exception?

  Alt 22. Mär 2013, 12:51
Es kommt auch auf die Grösse des Projekts an.
Bei kleineren Projekten kann man ohne weiteres Exceptions direkt so auslösen: raise Exception.Create('Fehler beim Laden der Konfiguration'); Da die Anzahl der raise - Anweisungen relativ klein ist, weiss man schon anhand des Fehlertextes wo man suchen muss.

Bei grossen und sehr grossen Anwendungen gibt es so viele Stellen im Sourcecode an denen eine Exception ausgelöst wird, dass man unmöglich alle im Kopf haben kann.
Dann ist es sehr hilfreich wenn man eigene Exception-Klassen einführt (z.B. EImportError, EXmlError, ...).
Diese Exception-Klassen leitet man meist direkt von der Klasse Exception ab, da die anderen in SysUtils definierten Klassen nur recht selten passen.

Bei richtig grossen Anwendungen wird man die (nichtabgefangene) Exception nicht nur anzeigen, sondern man wird Classname und Message der Exception in eine Logdatei schreiben.
Hier zahlt es sich dann aus, wenn man je nach "Bereich" oder Fehlerart eine eigene Exceptionklasse hat und so gleich weiss wo man suchen muss.
  Mit Zitat antworten Zitat