Objekte in Datenbank speichern - nach welchem Prinzip?
-
Hallo zusammen,
ich habe da so meine Schwierigkeiten mit dem Handling von Datenbanken. Ich möchte in C++ (und der Qt Library) eine Anwendung realisieren. Da gibt es dann z.B. Mitglieder(daten) die ich in einer Datenbank speichern möchte.
Für mich gibt es nun zwei Ansätze, z.B. beim Anzeigen von Daten:
Entweder ich papp die Datenbank in Form eines SQL Queries direkt über ein Model (List)View (ich glaube das ist der MVC-Ansatz, oder?) oder ich überlasse es dem Objekt (oder einer Factory-Klasse), sich mit den Daten aus der DB zu initialisieren und bringe dem ListView bei, wie es diese Objekte darstellt.
Letzteres erscheint mir sauberer, weil ich dann - wenn ich plötzlich eine andere Datenhaltung verwenden will - nur dem Objekt die andere Datenhaltung beibringen muss und der GUI-Teil unangetastet bleibt.Hmm, ich fürchte es ist nicht so einfach zu verstehen, was ich meine. Ich bin mir einfach nicht sicher, an welcher Stelle ich die Datenbank-Logik unterbringen soll. Ich dachte immer es ist besser ich arbeite in der ganzen Anwendung immer schön mit meinen Objekten (z.B. Mitglied) und nur das Objekt Mitglied weiß, wie es sich persistent macht. Aber dieser Model-View-Controller Ansatz aus Qt (und anderen Frameworks) bringt mich total durcheinander. Vielleicht habe ich diese MVC-Sache aber auch einfach noch nicht verstanden.
Könnt ihr mir da auf die Sprünge helfen?
Vielen Dank und Grüße
beedaddy