Suchen und Finden

Titel

Autor/Verlag

Inhaltsverzeichnis

Nur eBooks für mein Endgerät anzeigen:

 

Newsletter

db4o schnell + kompakt

db4o schnell + kompakt

von: Larysa Visengeriyeva, Patrick Römer

entwickler.press, 2006

ISBN: 9783939084037, 117 Seiten

Format: PDF

Mac OSX,Windows PC Apple iPad, Android Tablet PC's

Preis: 5,50 EUR

  • Basiswissen Softwarearchitektur
    UML@Work - Objektorientierte Modellierung mit UML2
    Handbuch Lernstrategien
    Infonautik - Wege durch den Wissensdschungel
    Einfach generieren. Generative Programmierung verständlich und praxisnah.
    Der einfache Weg zu innerer Ruhe - Die EFT-Methode
    Warum fällt das Schaf vom Baum? - Gedächtnistraining mit der Jugendweltmeisterin
    Software Engineering - Architektur-Design und Prozessorientierung
 

Mehr zum Inhalt

db4o schnell + kompakt


 

"5 Tiefe Objektgraphen (S. 49-50)

Bisher wurden nur relativ einfache und „flache"" Objekte betrachtet. Wie aber behandelt db4o komplexere, rekursiv definierte Strukturen, wie etwa Bäume, so dass man mit einer Referenz auf einen einzelnen Knoten nicht immer gleich die ganze Datenbank im Speicher hat?

Eine denkbare Lösung wäre ein transparentes System, das über lazy loading, Caches und Garbage Collection-artige Mechanismen den Eindruck eines „unendlichen"" Speichers erzeugt. Dies würde allerdings Komplexität und Ressourcenansprüche erhöhen. Da db4o ursprünglich besonders auf mobile Geräte mit begrenzten Ressourcen zielte, wurde hier ein anderer Ansatz gewählt, der dem Entwickler abverlangt, das „partielle Laden"" von Objektgraphen mit einzubeziehen, ihm andererseits aber auch entsprechend mehr Kontrolle über das Laufzeitverhalten lässt.

Aktivierungstiefe

Der Vorgang des „rekursiven"" Nachladens eines Feldwerts eines persistenten Objekts nennt sich Aktivierung. Der Wert eines nicht aktivierten Felds ist null im Falle eines Referenztypen und der entsprechende numerische Nullwert im Falle eines primitiven Typen.

Hinweis
Die Aktivierungstiefe eines Objekts beschreibt, welche Bestandteile des mit diesem Objekt verknüpften Graphen in den Speicher geladen wurden – in wie vielen Schritten rekursiv vom Wurzelobjekt ausgehend in Felder abgestiegen wurde."