Zitat:
Stilistisch würde ich aber keine AddSubscriber / RemoveSubscriber Methoden deklarieren, denn wenn diese eigenen Code enthalten der in der Oberklasse Add/Remove Methode nicht enthalten ist, könnten Klienten der Klasse weiter auf Add/Remove zugreifen (absichtlich oder unabsichtlich) und damit den eigenen Code umgehen.
Ich wollte eigentlich nur bessere Namen für die Add / Remove Methoden erzielen. Vielleicht sollte Ich die TObjectList besser als Feld meiner TPublisher Klasse deklarieren, ich denke, dann trifft es eher die Art, wie ich sie mir in meinem Konzept ausgedacht habe.
Delphi-Quellcode:
TPublisher
private
Subscribers : TList;
public
procedure AddSubscriber(Subscriber : ISubscriber);
procedure RemoveSubscriber(Subscriber : ISubscriber);
In dem oberen Beispiel kann Ich ja auch noch die generische Version der TList nehmen.