Software Design Frage
-
Hi Leute,
ich habe ein Steuerelement gegeben (z.B. einen Button aus einem Open-Source-Projekt). Dieser ist in einer Library.
Nun soll dieses gegebene Steuerelement um weitere Funktionen (z.B. besonderes Verhalten beim Klicken oder Doppel-Klick, oder oder oder) erweitert werden. Der neue Code soll in eine neue Library.
Ziel soll sein eine Anwendung (*.exe) bauen zu können, in der das erweiterte Steuerelement verwendet werden kann.
Nun zur eigentlichen Frage:
Muss ich in der neuen Library eine neue Klasse erzeugen und diese vom vorhandenen Steuerelement ableiten lassen? Oder wie würde man das am besten konstruieren, das der Erweiterungscode allein in einer einzelnen DLL ist? Gibt es noch andere Möglichkeiten als "Erben"?Danke für eure Hilfe!!
Schönes Wochenende
-
Häufig ist Komposition der bessere Weg als Vererbung. Dann hat die neue Klasse ein Objekt der alten Klasse als Feld und delegiert die Anfragen.
Aber, bei GUI-Controls zieht man häufig doch Vererbung vor, wenn die Funktionalität erweitert werden soll. Das ist i.d.R. praktikabler und wäre in deinem Fall die richtige Vorgehensweise. Vorausgesetzt natürlich, die Button-Klasse lässt sich erweitern.