Dzisiejszym tematem będzie…
ABSTRACT FACTORY, czyli Metoda fabrykująca
Cel:
Określenie interfejsu dla tworzenia obiektu z pozostawieniem podklasom decyzji o wyborze klasy tworzonego obiektu
Stosowalność:
Używamy go, gdy:
- Klasa nie jest w stanie przewidzieć klas obiektów, które musi tworzyć.
- Klasa chce, aby jej podklasy określały obiekty, które tworzy.
- Klasy delegują odpowiedzialność do jednej z kilku pomocniczych podklas i chcemy zlokalizować wiedzę o tym, która z tych podklas jest aktualnym delegatem.
Konsekwencje używania:
- Metody fabrykujące eliminują potrzebę umieszczania w kodzie klas specyficznych dla aplikacji.
- Potencjalna wada FM – klienci mogą być zmuszeni do specjalizowania klasy Twórcy tylko po to, żeby stworzyć szczególny Konkretny Produkt.
- Dostarczenie „wskazówek” podklasom
- Połączenie równoległych hierarchii klas
Diagram:



