You can edit almost every page by Creating an account. Otherwise, see the FAQ.

ORDA

Aus EverybodyWiki Bios & Wiki
Wechseln zu:Navigation, Suche

ORDA
Paradigmen: objektorientiert
Erscheinungsjahr: 2018
Designer: Lua-Fehler in Modul:Wikidata, Zeile 639: attempt to index field 'wikibase' (a nil value)
Entwickler: Lua-Fehler in Modul:Wikidata, Zeile 639: attempt to index field 'wikibase' (a nil value)
Aktuelle Version Lua-Fehler in Modul:Wikidata, Zeile 639: attempt to index field 'wikibase' (a nil value)  (Lua-Fehler in Modul:Wikidata, Zeile 639: attempt to index field 'wikibase' (a nil value))
Typisierung: stark, statisch, Typinferenz
Beeinflusst von: Lua-Fehler in Modul:Wikidata, Zeile 639: attempt to index field 'wikibase' (a nil value)
Betriebssystem: Windows, Mac OS X
Lizenz: 4D, proprietär
4d.com

ORDA (Object Relational Data Access) ist – anders als die Objektrelationale Abbildung (ORM) – eine Technologie, die objektorientierten Zugriff auf eine relationale Datenbank als native Funktionalität von der Datenbank-Engine über die Sprache und für Benutzeroberflächenobjekte bietet. Die native Integration vermeidet typische ORM-Nachteile wie hohe Ressourcenanforderungen und Geschwindigkeitsprobleme.

Geschichte[Bearbeiten]

Die erste Version von ORDA wurde im März 2018 mit 4D v17 veröffentlicht und während der 4D Summit angekündigt. ORDA wurde von Laurent Ribardière und anderen Mitarbeitern entwickelt.

  • O … für Objekt: Objekte sind für 4D nicht neu. Von der Erscheinung der Sprache als Objektfelder und mit Objektnotation. ORDA geht einen Schritt weiter: Die gesamte Datenbank wird als Objekt verwendet.
  • R … für relational: Die Verwendung von Relationen zum Erstellen von Geschäftsanwendungen ist notwendig. ORDA macht die Verwendung von Relationen so viel einfacher, auch wenn sie rekursiv sind.
  • D … für Daten: Alles dreht sich um Daten. ORDA macht die Nutzung der Daten so einfach und bequem wie bisher, aber unbegrenzt.
  • A … für den Zugriff (access): ORDA ist nicht als neue Sprache oder neue Syntax beschränkt. Aber mehr über den Zugriff auf Daten aus verschiedenen Quellen, mit dem gleichen Code und den gleichen Formen.

Beispiel[Bearbeiten]

Einfache Anfragen werden ähnlich wie ORM geschrieben:

lastName:=ds.Employee.lastname

Der 4D-Befehl ds gibt das Datenspeicherobjekt zurück.

Außerdem reduziert ORDA die Menge an Code, die geschrieben werden muss. Betrachten Sie zum Beispiel diesen rekursiven Link in der Tabelle "Employee":

Konzept[Bearbeiten]

Dieses Schema zeigt die wichtigsten ORDA-Konzepte auf einmal

Mit ORDA wird auf Daten über eine Abstraktionsschicht zugegriffen: den Datenspeicher. Ein Datenspeicher ist ein Objekt, das über Objekte eine Schnittstelle zur Datenbank und deren Daten bereitstellt. Beispielsweise wird eine Tabelle einem Datenklassenobjekt zugeordnet, ein Feld ist ein Attribut einer Datenklasse und Datensätze sind Entitys. Der neue Befehl ds gibt eine Referenz im Anwendungsdatenspeicher zurück.

Syntax[Bearbeiten]

Objektorientierter Programmierstil[Bearbeiten]

ORDA ist im Gegensatz zu prozeduraler Programmierung, die auf Aktionen basiert, um Objekte und Daten strukturiert.

Ein einfaches Beispiel wären die CRUD-Befehle. Die Erstellungsoperation wird ausgeführt, indem eine neue Entity mit der Methode new() instanziert und dann mit der Methode save() gespeichert wird.

// Erstellt einen neuen Datensatz in der Tabelle Employee
$employee:=ds.Employee.new()
$employee.lastName:="Smith"
$employee.save()

Suche alle Mitarbeiter, deren Vorname mit „D“ oder „E“ beginnt.

C_OBJECT($employees)
$employees:=ds.Employee.query("firstName == :1 or firstName == :2";"D@";"E@")

Weblinks[Bearbeiten]


Diese artikel "ORDA" ist von Wikipedia The list of its authors can be seen in its historical and/or the page Edithistory:ORDA.



Read or create/edit this page in another language[Bearbeiten]