Einzelnen Beitrag anzeigen

BigAl

Registriert seit: 6. Sep 2008
Ort: Kehl
495 Beiträge
 
Delphi 12 Athens
 
#1

Projekt speichern Stream, XML, Datenbank, ...?

  Alt 16. Nov 2009, 21:18
Hallo zusammen,

ich stehe hier vor einer etwas grundlegenden Entscheidung zu einem aktuellen Projekt. Es geht um die banale Frage wo und wie ich mein Projekt speichern soll. Von der Struktur her hätte ich mehrere Möglichkeiten:

1. Datenbank
+ Viele Benutzer können die Daten gleichzeitig nutzen
+ Struktur lässt sich beliebig erweitern
+ Daten werden zur Laufzeit dynamisch nachgeladen
+ auf Daten kann indiziert zugegriffen werden
+ Programmierung sehr einfach, da viel Erfahrung im Umgang mit Datenbanken vorhanden ist
- Programm benötigt immer Zugriff auf einen Datenbankserver

2. XML-Datei
+ Struktur lässt sich beliebig erweitern
+ Programm (bzw. die Daten) kann sehr leicht z.B. auf ein Notebook übertragen werden
- Habe bisher keine guten Erfahrungen mit XMLDocument und Co. gemacht
- Daten sind immer komplett im Speicher (die Datenmenge ist allerding überschaubar)

3. Stream
+ Programm (bzw. die Daten) kann sehr leicht z.B. auf ein Notebook übertragen werden
+ Grundsätzliche Programmumsetzung sehr einfach
- Struktur lässt sich nur mit Versionskontrolle und somit Aufwand erweitern
- Daten sind immer komplett im Speicher (die Datenmenge ist allerding überschaubar)

4. ????

Man könnte nun sagen ist doch klar. Nimm Datenbank, da sind die meisten "+". So einfach isses leider net. Ich würde in diesem Fall schon gerne auf die Datenbank verzichten. Einfach damit das Programm leicht "transportiert" werden kann. Das "-" gewichtet also schon stark. Das mit dem Stream wäre die einfachste Lösung. Ist mir aber nicht transparent genug. Ich habe das schon mehrfach gemacht... Vom Ansatz her würde ich XML favoritisieren. Allerdings habe ich - wie oben geschrieben - bisher keine guten Erfahrungen mit den XML-Funktionen in Delphi gemacht. Passen würde das Ganze sehr gut, da ich den Zustand (Properties) eigener Komponenten ablegen möchte. Der Aufbau der zu speichernden Daten ist eine Baumstruktur.

Hat jemand sonst noch Ideen? Wie speichert ihr die Arbeit in euren Programmen ab?

Ich hoffe ich habe nicht zu wirr geschrieben. Stecke mit meinen Gedanken derzeit voll im Compiler

Alex
Man sollte nie so viel zu tun haben, dass man zum Nachdenken keine Zeit mehr hat. (G.C. Lichtenberg)
  Mit Zitat antworten Zitat