Abstraktní továrna (Abstract Factory)

Účel:

Poskytuje rozhraní pro vytváření řad příbuzných nebo závislých objektů, aniž by se musely specifikovat konkrétní třídy.

Jiné názvy:

Kit (souprava)

Použití:

Vzor Abstraktní továrna lze použít v  následujících případech:

Struktura:

Abstract Factory

Součásti:

AbstractFactory
deklaruje rozhraní pro operace, které vytvářejí abstraktní produktové objekty
ConcreteFactory
implementuje operace k vytváření konkrétních produktových objektů
AbstractProduct
deklaruje rozhraní pro typ produktového objektu
ConcreteProduct
definuje produktový objekt, který se má vytvořit odpovídajíci konkrétní továrnou
implementuje rozhraní AbstractProduct
Client
používá pouze rozhraní deklarovaná třídami AbstractFactory a AbstractProduct