-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by -=ZGD=-,
24. Aug 2012
Hi bepe,
absolut kein Problem.
Ich bin und war für jede Hilfe dankbar.
Ich find´s sehr toll, dass du eine Beispielklasse implementiert hast.
Die hab ich mir gleich ausgedruckt und werde mich am Wochenende damit beschäftigen - dann kann ich Dictionarys abhaken :-)
Ich danke euch.
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by -=ZGD=-,
23. Aug 2012
´
Ich werde mal versuchen, das bei Gelegenheit umzusetzen.
Ich hätte nur gedacht, dass diese "Idee" recht trivial ist.
Interfaces, Generics, Dictionaries sind Neuheiten für mich, für die ich (leider!) noch keine Zeit hatte...
Danke, dass ihr euch die Zeit nehmt/genommen habt.
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by -=ZGD=-,
23. Aug 2012
Die Methode hatte ich drin, bzw. habe ich noch da nur leider lässt der Compiler es nicht durch.
procedure SetVariantValue(aID: String; aValue: Variant);
...
procedure SetAValue(aValue: Variant);
public
...
property Item: RConfig2 read GetVariantValue write SetVariantValue;
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by -=ZGD=-,
23. Aug 2012
Dann muss ich wieder so viel umbauen... :shock:
Und ich muss so ehrlich sein und sagen, dass mir die Einarbeitungszeit in Implicit für diese Miniklasse als zu hoch erscheint.
Es sieht so aus, als ist meine Vorstellung in dieser Art auf meiner Codebasis doch nicht so ohne Weiteres umzusetzen...
Ich bekomme einfach diese Inkompatible Typen Warnung nicht weg.
Vor allem frage ich mich,...
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by -=ZGD=-,
23. Aug 2012
Ich würde mich jetzt für die Variante mit Setter im Record entscheiden.
Die ist drin und sollte auch funktionieren...sollte.
Ich debugge.
Was passiert bei der jetzigen Konstellation:
type
RConfig2 = record
private
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by -=ZGD=-,
23. Aug 2012
Meine Worte :-)
Bei mir werden es auch nicht mehr als 50 Werte werden.
Ich finde diese Lösung eben einfach und alltagstauglich. Man muss nicht alles auf die Spitze treiben.
@Shark: Ich habe doch einen Setter im Record..wo finde ich meinen Fehler?
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by -=ZGD=-,
23. Aug 2012
Performance ist mir vollkommen egal, da nur beim Start der Anwendung die lokale Konfiguration gelesen wird.
Ob da nun 200ms oder 1000ms dauert, damit können die Anwendung und auch ich leben.
Ich suche einfach nach einer schneller, guten und dauerhaften Lösung.
Die Klasse wird einmal geschrieben und dann nie wieder im Code angefasst, weil sie eben genau das tut, was sie soll: Konfigurationen...
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by -=ZGD=-,
23. Aug 2012
Du frägst keinen Boolean auf -1 ab, aber das wäre in dem Falle ein TRUE und ist selbiges Feld als Integer -1 kannst du genauso damit arbeiten und zum Beispiel Werte einfach negieren, wenn du es *-1 nimmst.
Jetzt nicht den Kopf zerbrechen, warum und woher.. :)
Pass auf:
KEY | VALUE
dbhost | localhost
dbport | 3306
dbuser | root
...
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by -=ZGD=-,
23. Aug 2012
Hab ich gesehen Shark, etwas zu spät.
Hmm, mit RTTI möchte ich eigentlich nicht arbeiten, frag mich nicht warum, aber ich schau mir das in der Freizeit gern mal an.
Naja, Variant hält mir einfach die Flexibilität offen.
Für mich macht es im Moment mehr Sinn, wenn ich einfach sagen kann myConfig.Items.AsBoolen und ich dann schon fertig meine Konvertierung, whatever gemacht habe.
Der...
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by -=ZGD=-,
23. Aug 2012
Hallo Thom,
das würde funktionieren, ist aber insofern unpraktisch, dass ich gern vordefinierte Werte zurückgeben möchte.
Wenn ich beispielsweise einen Port (INTEGER) zuweise und die Value leer ist, beschmeißt mich Delphi natürlich mit der korrekten Fehlermeldung "" ist kein gültiger Integer-Wert. Das würde ich umgehen wollen und einfach von vorn herein 0 übergeben.
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by -=ZGD=-,
23. Aug 2012
Danke für dein Hilfe bepe.
Auf Grundlage deiner Informationen bin ich jetzt soweit vorangeschritten:
type
RConfig2 = record
private
fKey: String;
fValue: Variant;
function GetAsString: String;
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by -=ZGD=-,
23. Aug 2012
So sieht es jetzt bei mir aus
Ich habe ein record über alle Einträge:
type
RConfig = record
Key: String;
Value: String;
end;
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by -=ZGD=-,
23. Aug 2012
Weil "ja" mir nicht ausreichend war ;-)
Das wäre eigentlich genau mein Plan. Dann muss ich mit einer ObjectList arbeiten?
Hmm, auf diese Methode bin ich noch gar nicht gekommen. Der Implementierungsaufwand wäre in beiden Fällen der Gleiche...
Ich danke dir - einstweilen..
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by -=ZGD=-,
23. Aug 2012
Servus,
ich stehe vor einem kleinen Problem und komm leider auch trotz Suche nicht auf die richtigen Stichwörter.
Ich bin mir sicher, dieses Problem wurde schon öfter mal angesprochen.
Problem
Ich habe eine Konfigurationsklasse, in welcher wie gesagt Einstellungen auf Vorrat gehalten werden.
Das Lesen/Schreiben via property Items: String read GetValue write SetValue; in dem einfach der...