Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Delphi Wo häufig benötigte Daten speichern (https://www.delphipraxis.net/178009-wo-haeufig-benoetigte-daten-speichern.html)

TiGü 11. Dez 2013 10:28

AW: Wo häufig benötigte Daten speichern
 
Zitat:

Zitat von p80286 (Beitrag 1239393)
Zitat:

Zitat von Sir Rufo (Beitrag 1239368)
Ganz simpel und einfach

Gibt's da irgendwo noch ein paar Beispiele und Erläuterungen zu ?
(nach Möglichkeit ohne irgendwelche Modevokabeln)
Sieht interessant aus!

Lazy loading / Lazy initialization:
http://www.it-visions.de/glossar/scr...y_Loading.aspx
http://en.wikipedia.org/wiki/Lazy_loading

Gleichzeitig ist im Beispiel von Sir Rufo der AppLayer ein Singleton, über dessen Freigabe man sich keine Gedanken machen braucht, weil zum Programmende die Instanz automatisch freigegeben wird.

p80286 11. Dez 2013 11:09

AW: Wo häufig benötigte Daten speichern
 
Danke!

Scheint das zu sein was mir weiterhilft!

Gruß
K-H

Der schöne Günther 11. Dez 2013 11:28

AW: Wo häufig benötigte Daten speichern
 
Das was bei mir Rufos AppLayer entspricht sieht bei mir praktisch genauso aus, das freut mich. Eine Frage habe ich jedoch mal zur Freigabe am Schluss:

Auch wenn es der Implementation-Teil ist, da schwebt ja eine globale Variable herum. Wann wird die eigentlich freigegeben? Bei der Finalisierung der Units? Mein einziger Unterschied ist, dass ich daraus eine Klassenvariable von
Delphi-Quellcode:
TAppLayer
gemacht habe und zusätzlich noch einen Klassendestruktor der diese Referenz dann manuell freigibt. Bei dem Klassendestruktor frage ich mich jetzt aber genauso, wann der in Delphi eigentlich aufgerufen wird. :gruebel:

TiGü 11. Dez 2013 12:26

AW: Wo häufig benötigte Daten speichern
 
Zitat:

Zitat von Der schöne Günther (Beitrag 1239403)
Auch wenn es der Implementation-Teil ist, da schwebt ja eine globale Variable herum.

Die ist aber nur "pseudo-global", weil keiner von außen dran kommt.
Sie ist nur innerhalb der Implementation-Sektion sichtbar.

Zitat:

Zitat von Der schöne Günther (Beitrag 1239403)
Wann wird die eigentlich freigegeben? Bei der Finalisierung der Units?

Ja!

Zitat:

Zitat von Der schöne Günther (Beitrag 1239403)
Mein einziger Unterschied ist, dass ich daraus eine Klassenvariable von
Delphi-Quellcode:
TAppLayer
gemacht habe und zusätzlich noch einen Klassendestruktor der diese Referenz dann manuell freigibt. Bei dem Klassendestruktor frage ich mich jetzt aber genauso, wann der in Delphi eigentlich aufgerufen wird. :gruebel:

Daraus eine Klassenvariable zu machen ist unnötig.
Du kannst auch in Interfaces mit Propertys arbeiten.
Wenn dein Objekt auch bis zum Schließen der Applikation leben soll, dann bietet sich der oben aufgezeigte Weg an.

jaenicke 11. Dez 2013 14:28

AW: Wo häufig benötigte Daten speichern
 
Zitat:

Zitat von Der schöne Günther (Beitrag 1239403)
Bei dem Klassendestruktor frage ich mich jetzt aber genauso, wann der in Delphi eigentlich aufgerufen wird. :gruebel:

Die Reihenfolge ist einfach:
1. Klassenkonstruktoren
2. initialization der Unit
3. finalization der Unit
4. Klassendesktruktoren

Der Grund ist ebenfalls einfach:
In initialization oder finalization könnte ja die Klasse verwendet werden.


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:33 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz