Einzelnen Beitrag anzeigen

Dejan Vu
(Gast)

n/a Beiträge
 
#15

AW: TList<>.OnBefore?

  Alt 25. Jan 2016, 18:38
TList ist keine Komponente, sondern eine Klasse. Und so eine Klasse hat genau eine einzige Aufgabe: Implementierung einer Liste.
Wo wurde behauptet, daß TList eine Komponente ist?
Muss denn irgendwo stehen, A ist ein B, um zu betonen, das A eben *kein* B ist? Komponenten haben Events ohne Ende, um das Verhalten zu modifizieren, kleine Klassen nicht.
Deine SW wäre mit TListen übersäht, wobei das OnBefore... ständig umgebogen würde. Hmmm....
Wieso? Eine virtuelle "DoBefore" wäre doch hilfreich. [/QUOTE] Klar und dann? Schreibe ich mir lauter Ableitungen (composition over inheritance).
Wenn ich eine Liste benötige, bei der ich kontrollieren muss, was rein darf und was nicht, schreibe ich mir eine entsprechende Klasse.
Die Liste (bzw. allgemein: eine Klasse) mit virtuellen Methoden zu überladen und damit komplex und schwerfällig zu machen, kann es doch nicht sein.
Denn es bliebe ja nicht beim OnBefore, sondern... OnAfter? OnDelete? OAfterDelete? etc. Was ist, wenn ich ein Listenelement einfach update und damit die Validierumg im 'OnBefore' aushebeln kann?
  Mit Zitat antworten Zitat