Methoden oder Factory Pattern?



  • Hallo miteinander,

    ich habe eine Datenstruktur aus Listen und Bäumen und möchte Elemente zur weiteren Verarbeitung auswählen. Dazu habe ich eine Klasse geschrieben die die Auswahlkriterien übernimmt (aus User-Abfrage oder Input-File), verwaltet und dokumentiert (in einer (history-)liste ablegt). Diese Klasse enthält eine Methode die nach diesen Kriterien eine Auswahl vornimmt.

    Nun möchte ich nach anderen mathematischen Verfahren auswählen. Ist es sinnvoll dafür das factory Pattern zu verwenden und für jedes Verfahren eine abgeleitete Klasse zu erzeugen? Oder löst man eine derartige Aufgabenstellung besser in dem man einfach verschiedene Methoden zu der bestehenden Klasse hinzufügt und diese im Hauptprogramm in einer Fallunterscheidung aufruft?

    Herzlichen Dank im Voraus für jeden Hinweis auf Vor- und Nachteile oder auf ein günstigeres Verfahren, das ich übersehen habe.

    Viele Grüße
    Knecht



  • ev. geht das besser mit dem Strategie Pattern.



  • Hans Muster schrieb:

    ev. geht das besser mit dem Strategie Pattern.

    Danke für diesen Hinweis. Leider war meine Web-Suche nach diesem Pattern nicht Erfolgreich. Dennoch habe ich einen Hinweis gefunden, von dem ich aber nicht sicher bin, ob er richtig ist.

    Desshalb die Frage: Läuft das Strategie Pattern auch unter dem Namen Decorator Pattern?

    Danke nochmals.

    Viele Grüße
    Knecht



  • Knecht schrieb:

    Danke für diesen Hinweis. Leider war meine Web-Suche nach diesem Pattern nicht Erfolgreich.

    Google: "Strategy Pattern"



  • Das war genau was ich gesucht habe. Danke.

    Hatte leider nur nach dem deutschen Wort gegoogelt ("Strategie Pattern") und da nur zwei Seiten bekommen die auf o. g. Pattern verweisen. Sorry!

    Danke nochmals. 👍

    Viele Grüße
    Knecht



  • Sry, mein Fehler..



  • Diese Klasse enthält eine Methode die nach diesen Kriterien eine Auswahl vornimmt.

    Das bleibt dir aber auch durch das strategie pattern ned erspart ... die verzweigung auf den richtigen "typ" in ner funktion ausgelagert welche dir deinen algo als Impl eines Interfaces zurueckgibt -> Factory Methode
    baust sogar nen Object dazu, hasst ne klassiche Objectfactory ...

    Ciao ...


Anmelden zum Antworten