Factory-Entwurfsmuster

Zet

Aktives Mitglied
Hallo zusammen,

ich versuche grade meinen Horizont ein wenig zu erweitern... 😳
Deshalb versuche ich mich mit Factory-Methoden/Entwurfsmuster auseinanderzusetzen.

fand dieses Tutorial garnicht schlecht!

Nun habe ich am Ende festgestellt, das ich irgendwie doch nicht Klüger geworden bin.
Kann mir jemand ein paar Grundlegende Dinge zu den Fabrik'en sagen?
Oder einen "Standard"-Anwendungsfall, wo man sofort an Factorys denken sollte?

Das sind leider relativ allgemeine Fragen, aber irgendwie hat es nicht Klick gemacht.
Steh mal wieder auf der Leitung ???:L

Hoffe mir kann jemand ein wenig darüber erzählen.

Beste Grüße,
Zet
 
Das Factory-Muster ist oft anzutreffen, wenn ein "Kunde/Anwender" ein Problem hat, dass zwar üblich ist (so dass ihm ein einfaches Framework dazu angeboten werden soll), für dessen Lösung es aber (intern) (sehr) verschiedene Wege gibt, die von äußeren Umständen abhängen.

Die Factory bekommt also den Auftrag: "Kunde will sein Problem gelöst haben", und es ist nun ihre Aufgabe, die "äußeren Umstände" zu prüfen und eine passende Lösung zu suchen.

Beispiel:
Kunde/Programmierer will "Abspielen einer Audiodatei (.mp3)".
Er programmiert z.B.
Java:
{
  // ...
  AudioPlayer ap ;
  ap = AudioPlayerFactory.getInstance( AudioType.MP3 );
  ap.play( mySong );
}
Problem: Je nach im Computer installiertem Audio-Wiedergabe-Gerät muss evtl. ein anderer Treiber verwendet werden, oder die Sounddaten müssen nochmal intern umgerechnet werden, oder müssen mit anderen Soundausgaben gemischt werden, oder oder oder.

Das alles klärt die Factory, und liefert dem Aufrufer dann ein genau passendes Objekt einer passenden Unterklasse von AudioPlayer - der "Kunde/Programmierer" muss sich hierum nicht mehr kümmern.
 

Zurück
Oben