Data Access Object (DAO, englisch für Datenzugriffsobjekt) ist ein Entwurfsmuster, das den Zugriff auf unterschiedliche Arten von Datenquellen (z. B. Datenbanken, Dateisystem) so kapselt, dass die angesprochene Datenquelle ausgetauscht werden kann, ohne dass der aufrufende Code geändert werden muss. Dadurch soll die eigentliche Programmlogik von technischen Details der Datenspeicherung befreit werden und flexibler einsetzbar sein. DAO ist also ein Muster für die Gestaltung von Programmierschnittstellen (APIs). Wenn eine Programmiersprache keine Trennung von Schnittstellendefinition und -Implementierung ermöglicht, muss ein DAO die definierte Schnittstelle unmittelbar implementieren.

Eigenschaften

Bearbeiten
  • DAOs abstrahieren den Zugriff auf Datenbanken nicht vollständig, da sie nicht für die Transformation der Daten in die Struktur der Datenbank verantwortlich sind.
  • DAOs sind jeweils für ein spezielles Speichermedium optimiert. Der Zugriff auf dieses Medium wird über das vom DAO vorgegebene bzw. zu implementierende API vorgenommen.
  • DAOs minimieren den Portierungsaufwand einer Anwendung beim Wechsel des Speichermediums.

Eng verwandt mit dem Data Access Object ist das Entwurfsmuster Transferobjekt. Dieses übernimmt im Zusammenspiel mit dem DAO die Transformation der aus der Datenquelle kommenden Daten in die von der Applikation gewünschte Form. Bei der objektrelationalen Abbildung werden so objektorientierte Daten in relationale Form transformiert.

Anwendungsbeispiele

Bearbeiten

Das Muster findet sich auch im Jakarta-EE-Umfeld. Apple liefert ein ähnliches Konzept namens Enterprise Objects im Rahmen der WebObjects.

Bearbeiten

📚 Artikel Terkait di Wikipedia

Data Access Objects

Data Access Objects, in der deutschsprachigen Dokumentation „Datenzugriffsobjekte“, üblicherweise mit der Abkürzung „DAO“ bezeichnet, ist eine Schnittstellen-Bibliothek

Microsoft Access Database

Programmierer über Data Access Objects (DAO), ActiveX Data Objects (ADODB/ADOX), ADO.NET, Open Database Connectivity (ODBC), Remote Data Objects (RDO), OLE DB

Microsoft Access

entwickelt und der Dateizugriff von DAO (Data Access Objects) auf das vielseitigere ADO (Active Data Objects) umgestellt. ADO abstrahiert wesentlich stärker

Remote Data Objects

Ergänzung zur Schnittstelle Data Access Objects (DAO) konzipiert worden. Die Anfang der 90er Jahre eingeführte Datenbank Access wurde durch die Jet Engine

ActiveX Data Objects

Nachfolger von DAO (Data Access Objects). Mit ADO lassen sich nahezu alle gebräuchlichen relationalen Datenbanken (z. B. Microsoft Access, Microsoft SQL Server

Open Database Connectivity

optimierte Data Access Objects (DAO) ermöglicht den mittelbaren Zugriff auf ODBC. Seit Windows 2000 ist ODBC als Komponente der Microsoft Data Access Components

OLE DB

Connectivity ODBC – Open Database Connectivity ADO – ActiveX Data Objects DAO – Data Access Objects Microsoft OLE DB. In: learn.microsoft.com. Microsoft, 5

Digital Object Identifier

jeweiligen Registrierungsagentur (z. B. Crossref, DataCite) entsprechen. Dies wird im Folgenden am Beispiel von DataCite dargestellt. Auch die letzte Version der