Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by Whookie,
16. Dez 2013
Es gibt leider Menschen mit den unterschiedlichsten Charakterzügen...
:thumb:
...wobei, das erst die QM-Abteilung nach ausgiebigen Tests erlauben sollten.
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by Whookie,
16. Dez 2013
Habe ich mir angesehen, aber die Welt ist halt nicht immer so einfach wie man es sich gerne machen würde. Die Hauptliste enthält bereits einen Hash und ist danach sortiert (um effizient darauf zugreifen zu können), alle anderen Listen benötigen keinen Namen und keinen Hash sie werden beim Parsen korrekt zusammengestellt und niemals durchsucht.
Das Beispiel ist soweit reduziert, dass nur noch das...
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by Whookie,
16. Dez 2013
Die Bereichsüberprüfung (zusammen mit der I/O Prüfung und der Überlaufprüfung) ist absolute Pflicht, wir hatten schon Leute in der Firma, die uns durch abschalten Stress ohne Ende bereitet haben...
Performanz mag ja hin und wieder ein Faktor sein, Sicherheit geht aber vor!
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by Whookie,
16. Dez 2013
Dann verurteile ich Dich mal zu 30 Tagen XE4-Debugging... da geht auch alles problemlos ... ;) ... solange man nicht sowas komplexes wie ein Array oder eine Liste verwendet
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by Whookie,
15. Dez 2013
..wenn ich mir das so recht überlege muss die Not schon groß sein, so etwas anzugehen (schon gar bei den nur rudimentär vorhandenen Debugmöglichkeiten von XE4 :evil:)...
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by Whookie,
15. Dez 2013
Aber einsetzbar sind Interfaces anscheinend nur für simple Dinge, sobald Beziehung zwischen den Instanzen abgebildet werden müssen, verhindert die Referenzzähling eine Verwendung (siehe Beispiel aus meinem letzen Beitrag, dort werden Destructoren nicht aufgerufen, weil die Referenzzählung es beim Freigeben verhindert).
Ich habe das selbe Beispiel nochmals mit Interfaces ohne Referenzzählung...
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by Whookie,
13. Dez 2013
Ich seh schon ... heißes Thema :twisted: ...
Da es mir aber um die Implementierung mit Interfaces geht habe ich das ganze nochmals vereinfacht und komplett auf Interfaces umgestellt. Dazu gibts ein eigenes IAdmin-Interface in dem die Sachen definiert sind die vorher eben nur in der Objektinstanz zur Verfügung standen.
Die Implementierung habe ich hier angehängt weil es noch ein Problem bei...
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by Whookie,
11. Dez 2013
... und laut Doku ist das Objekt damit auch zerstört und damit kann man diese Variante nicht verwenden...
Edit: Habe nicht erwähnt das ich meine Klassen nicht als Interface speichern kann (ISomeThing muss zu TSomeThing werden), weil ich eben eine "Basisliste" mit allen Klassen habe. Diese stehen untereinander in verschiedenen Beziehungen und pflegen daher eigene TNodeList-en um eine Referenz...
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by Whookie,
9. Dez 2013
Ich fürchte mein Verständnis für Interfaces und Generics reicht nicht aus um das Beispiel nachzuvollziehen... IListData als Typ der Liste hätte ich noch als Tippfehler gesehen sodass daraus FList:TList<TListData>; wird?
Die Get-Funktion wird dann zu:
function TMyList.Get<T>(const AIndex: Integer): T;
begin
if not Supports(FList.fMy, Result) then //<- Error
Result := nil;
end;