Home » Tutorials » Datenbanken » Object Persistence Framework

Object Persistence Framework

Einleitung

Fast seit beginn der Objektorientierten Programmierung suchten Entwickler einen Weg, wie sie die Daten ihrer Objekte auf einfache Art und Weise in eine Datenbank bekommen. Einer der Wege die eingeschlagen wurden waren Objektorientierte Datenbanken, die sich allerdings nie gegen die relationalen Datenbanken durchsetzen konnten.
Ein weiterer Weg war, die Informationen von Objekten auszulesen und in „normale“ relationale Datenbanken zu speichern. Schnell war klar, dass dieser Mechanismus nicht allein durch einige Methoden in den Objekten bewerkstelligt werden konnte. Für diese Funktionen benötigte man schon ein ganzes Framework von Klasse – ein Object Persistence Framework oder ein O-R Mapping, ein Object-relational Mapping.
Für Delphi gibt es einige OPF. Neben ECO, dem Nachfolger von Bold für Delphi, gibt es weitere kostenpflichtige Frameworks und auch einige kostenlose OpenSource Lösungen:

  • InstantObjects: http://www.instantobjects.org/ (Win32)
  • tiOPF: http://tiopf.sourceforge.net/ (Win32)
  • DePO (Delphi Persistent Objects): http://sourceforge.net/projects/depo/ (keine Weiterentwicklung seit 2003 – Version 0.3) (Win32)
  • DObject: http://www.macrobject.com/en/dobject/index.htm (kostenpflichtig)
  • ECO: http://www.capableobjects.com/ (kostenpflichtig – bis Delphi 2006 teilweise Bestandteil der Delphi-IDE) (.NET)

Neben der Funktionalität die Attribute von Objekten in eine relationale Datenbank zu speichern, bieten auch alle OPFs die Möglichkeit an, mehrere unterschiedliche Datenbanken in einer Anwendung zu verwenden, also eine Anwendung wird einmal entwickelt und der Anwender der Software entscheidet, in welcher Datenbank seine Daten gespeichert werden – und das quasi ohne Mehraufwand für den Entwickler. Für .NET speziell Visual Studio gibt es eine Menge weiterer OPF. Eine Zusammenstellung gibt es hier: http://sharptoolbox.com/.