... aber zumindest eine vorgeschaltete Hierarchiestufe, in der ich dann alle Erweiterungen einbauen kann.
Ich glaube nicht, dass du das
Single Responsibility Prinzip verstanden hast; du kannst doch nicht alles Mögliche in eine (Form-)Klasse einbauen.
Das ergibt den kleinen Bruder eines sog.
God Objekts.
Hast du schon mal
Testgetriebene Entwicklung (TDD) praktiziert? Oder vielleicht mal
Unit-Tests mit
DUnit geschrieben?
Falls ja, dann wirst du gemerkt haben, dass man solche grossen Klassen, die alle möglichen Funktionalitäten beherbergen (weils anscheinend so bequem ist) nicht mehr richtig testen kann.
Ich kann nur empfehlen: Lest das Buch "Clean Code" von Robert C. Martin (
download PDF) und schaut euch Videos über
SOLID auf Youtube an.