Hej,
man stelle sich vor, man habe eine relativ große Datenstruktur (eigentlich ein Container der mehrere Sets verschiedener Elementtypen enthält).
Dieser Container soll hierarchisch modularisiert werden. Also die Inhalte des Containers werden nach einem Bestimmten Kriterium in verschiedene Subcontainer gepackt, die dann wiederrum weiter zerlegt werden können, usw...
Wichtig noch: Die Modularisierung soll zwar jeweils immer nur nach einem Kriterium erfolgen, es sollen aber verschiedene Kriterien angeboten werden, nach denen zerlegt werden kann.
Nun die Frage welcher Ansatz der eleganteste ist:
a) der Container bringt selber die Methoden seiner Zerlegung mit.
b) es gibt einen abstrakten Zerleger, der je nach Kriterium eine konkreten Zerleger beerbt, dieser wird mit dem Container gefüttert und gibt als Ergebnis das Zerlegungsobjekt zurück.
c) das Ergebnisobjekt wird beim instanzieren mit dem Container und der Zerlegungsklasse gefüttert.
Beste Grüße
Biesterfeld
man stelle sich vor, man habe eine relativ große Datenstruktur (eigentlich ein Container der mehrere Sets verschiedener Elementtypen enthält).
Dieser Container soll hierarchisch modularisiert werden. Also die Inhalte des Containers werden nach einem Bestimmten Kriterium in verschiedene Subcontainer gepackt, die dann wiederrum weiter zerlegt werden können, usw...
Wichtig noch: Die Modularisierung soll zwar jeweils immer nur nach einem Kriterium erfolgen, es sollen aber verschiedene Kriterien angeboten werden, nach denen zerlegt werden kann.
Nun die Frage welcher Ansatz der eleganteste ist:
a) der Container bringt selber die Methoden seiner Zerlegung mit.
b) es gibt einen abstrakten Zerleger, der je nach Kriterium eine konkreten Zerleger beerbt, dieser wird mit dem Container gefüttert und gibt als Ergebnis das Zerlegungsobjekt zurück.
c) das Ergebnisobjekt wird beim instanzieren mit dem Container und der Zerlegungsklasse gefüttert.
Beste Grüße
Biesterfeld