Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   Pfad in Datenklasse hinterlegen oder bei Gebrauch außerhalb erzeugen? (https://www.delphipraxis.net/200437-pfad-datenklasse-hinterlegen-oder-bei-gebrauch-ausserhalb-erzeugen.html)

Bünni 19. Apr 2019 12:21

Pfad in Datenklasse hinterlegen oder bei Gebrauch außerhalb erzeugen?
 
Bei einem anderen Problem konnte mir schon geholfen werden. Dabei ging es um das erzeugen einer ID aus einem String heraus.
Jetzt frage ich mich aber, wo ich die Pfade mit dieser ID speichern soll.

Es gibt zwei Möglichkeiten. Den kompletten schon zusammengebauten Pfad direkt in der Klasseninstanzen in einem schon existierenden Setter oder ich erstelle eine eigene Funktion dafür, die den Pfad nur erzeugt wenn er benötigt wird. Was ist hier zu bevorzugen? Ich habe den Eindruck, dass die zweite Variante mehr Anpassungsarbeit erfordert, wenn sich etwas ändern sollte.
Zwischen 0 und 5 Pfaden müssten erzeugt werden. Stellt das ein Problem da, die dauerhaft im Speicher mitzutragen bei einer Anzahl von 0 bis 250 Klasseninstanzen?

Der Pfad ist an den Wert eines schon existierendes Properties gebunden. Ändert sich das Property, ändert sich auch der Pfad.

Delbor 19. Apr 2019 12:54

AW: Pfad in Datenklasse hinterlegen oder bei Gebrauch außerhalb erzeugen?
 
Hi Bünni

Ein Pfad ist nichts anderes als ein String. Das Neu erzeugen würde ich sein lassen - du müsstest für jede Klasseninstanz den Zielort und allfällige übergeordnete Ordner speichern - da kannst du auch gleich ein Feld für den kompletten Pfad anlegen.
Besser wäre wohl eine Ini-Datei,die eine Namen-Wert-Liste mit den benötigten Pfaden enthält (1=C:\xxx). Diese Items knnst du bei Bedarf ändern. Zur Sicherheit könntest du noch ein Item 'Pass := (Passwort)' einfügen und das auslesen nur erlauben, wennneer user dass richtige Passwort eingibt. Ansonsten bleibt die Datei gesperrt.

Gruss
Delbor

dummzeuch 19. Apr 2019 14:14

AW: Pfad in Datenklasse hinterlegen oder bei Gebrauch außerhalb erzeugen?
 
Zitat:

Zitat von Bünni (Beitrag 1430632)
Zwischen 0 und 5 Pfaden müssten erzeugt werden. Stellt das ein Problem da, die dauerhaft im Speicher mitzutragen bei einer Anzahl von 0 bis 250 Klasseninstanzen?

Rechnen wir mal:

Bei normalen Pfadlängen (MAX_PATH = 260):

250 Instanzen * 5 Pfade * 260 Zeichen * 2 bytes = 650000 Bytes = ca. 640 KBytes (*1)

Bei erweiterten Pfadlängen mit spezieller Syntax:

250 Instanzen * 5 Pfade * 32767 Zeichen * 2 bytes = ca. 78 Megabytes (*2)

Beides sollte bei heutigen Speichergrößen kein Problem darstellen, zumal es sich ja um das Maximum handelt.

(*1: Erinnert sich noch jemand daran, dass dies der max. verfügbare Speicher unter DOS war?)
(*2: Mein erstesr NT-Rechner hatte gerade mal 32 MBytes, mein letzter OS/2-Rechner hatte 16.)


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:20 Uhr.

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