Hallo,
ich habe mal eine allgemeine Frage, in welcher es um try-catch-Statements geht. Wie man diese einsetzt und programmiert ist mir klar. Aber nehmen wir an, man hat ein komplexeres Programm mit umgesetzter 3-Schichten-Architektur, wo Daten, Logik und Gui voneinander getrennt sind. In den Datenklassen hole ich mir dann Daten aus einer Datenbank, die Daten werden in den Logik-Klassen angepasst/aggregiert/was auch immer und dann in der Gui dargestellt. Hierbei muss ich zwangsläufig einen try-catch-Block in meine Datenklasse packen, wo ich die Daten aus der Datenbank hole (SQLException). Oder ich füge hier ein "throws" ein und lasse dann eine der anderen Schichten das try-catch ausführen.
Meine Frage hierbei ist: Gibt es irgendeine allgemeine Konvention oder den "besten" Weg, wo man das try-catch ausführt oder ist das relativ egal? Ich würde ja sagen, man muss das auf der Logikebene machen, aber am einfachsten wäre es auf der Gui-Ebene, wo man in einem catch dann direkt ein JOptionPane mit der Fehlermeldung anzeigen könnte.
ich habe mal eine allgemeine Frage, in welcher es um try-catch-Statements geht. Wie man diese einsetzt und programmiert ist mir klar. Aber nehmen wir an, man hat ein komplexeres Programm mit umgesetzter 3-Schichten-Architektur, wo Daten, Logik und Gui voneinander getrennt sind. In den Datenklassen hole ich mir dann Daten aus einer Datenbank, die Daten werden in den Logik-Klassen angepasst/aggregiert/was auch immer und dann in der Gui dargestellt. Hierbei muss ich zwangsläufig einen try-catch-Block in meine Datenklasse packen, wo ich die Daten aus der Datenbank hole (SQLException). Oder ich füge hier ein "throws" ein und lasse dann eine der anderen Schichten das try-catch ausführen.
Meine Frage hierbei ist: Gibt es irgendeine allgemeine Konvention oder den "besten" Weg, wo man das try-catch ausführt oder ist das relativ egal? Ich würde ja sagen, man muss das auf der Logikebene machen, aber am einfachsten wäre es auf der Gui-Ebene, wo man in einem catch dann direkt ein JOptionPane mit der Fehlermeldung anzeigen könnte.