Moltar
Mitglied
Hallo,
ich habe ein komplexeres Programm, in dem logischerweise auch Fehler auftreten können.
Ein Beispiel:
Der Benutzer klickt im Login-Formular auf den Button "Login". Daraufhin folgen eine Reihe von Funktionsaufrufen:
Der Button ruft die Login-Funktion des Frames auf.
Der Frame die Login-Funktion des Client.
Client -> Server
Server -> Datenbankschnittstelle
Datenbankschnittstelle -> Datenbank
Tritt nun ein Fehler in der Datenbank auf (Beispielsweise, weil die Tabelle, in der die Login-Daten stehen sollten, gelöscht wurde), dann entsteht dort eine Exception.
Nun meine Frage: Ist es sinnvoll, diese Exception durch die ganze Funktionskette bis hin zum Buttonklick durchzureichen? Oder sollte ich sie an einer (welcher?) Stelle vorher abfangen und verarbeiten?
Mein Problem bei der Lösung 'vorher abfangen' ist, dass ich ja nicht weiß, ob die aufrufende Funktion nicht noch mehr macht als nur diese Funktion aufzurufen. Damit bräuchte ich die Exception ja aber bis zum Buttonklick, damit der keine weiteren Aktionen ausführt. Oder sollte ich da einen entsprechenden Wert zurückgeben (z.b. boolean)?
Ich habe jedoch auch Funktionen, die einen Rückgabewert haben. Müsste ich da dann die Exception später abfangen? Oder null zurückgeben? Und was wäre dann, wenn auch im Erfolgsfall null zurückkommen könnte?
Fragen über Fragen ... aber ich wollte mein Programm gerne sinnvoll strukturieren.
Hoffe, ihr könnt mir helfen.
Grüße
Moltar
ich habe ein komplexeres Programm, in dem logischerweise auch Fehler auftreten können.
Ein Beispiel:
Der Benutzer klickt im Login-Formular auf den Button "Login". Daraufhin folgen eine Reihe von Funktionsaufrufen:
Der Button ruft die Login-Funktion des Frames auf.
Der Frame die Login-Funktion des Client.
Client -> Server
Server -> Datenbankschnittstelle
Datenbankschnittstelle -> Datenbank
Tritt nun ein Fehler in der Datenbank auf (Beispielsweise, weil die Tabelle, in der die Login-Daten stehen sollten, gelöscht wurde), dann entsteht dort eine Exception.
Nun meine Frage: Ist es sinnvoll, diese Exception durch die ganze Funktionskette bis hin zum Buttonklick durchzureichen? Oder sollte ich sie an einer (welcher?) Stelle vorher abfangen und verarbeiten?
Mein Problem bei der Lösung 'vorher abfangen' ist, dass ich ja nicht weiß, ob die aufrufende Funktion nicht noch mehr macht als nur diese Funktion aufzurufen. Damit bräuchte ich die Exception ja aber bis zum Buttonklick, damit der keine weiteren Aktionen ausführt. Oder sollte ich da einen entsprechenden Wert zurückgeben (z.b. boolean)?
Ich habe jedoch auch Funktionen, die einen Rückgabewert haben. Müsste ich da dann die Exception später abfangen? Oder null zurückgeben? Und was wäre dann, wenn auch im Erfolgsfall null zurückkommen könnte?
Fragen über Fragen ... aber ich wollte mein Programm gerne sinnvoll strukturieren.
Hoffe, ihr könnt mir helfen.
Grüße
Moltar