Tento příklad ukazuje, jak lze použít Tovární metodu pro vytváření prvků uživatelského rozhraní mezi platformami bez propojení kódu klienta s konkrétními třídami uživatelského rozhraní.
Základní třída dialogového okna používá k vykreslení svého okna různé prvky uživatelského rozhraní. V různých operačních systémech mohou tyto prvky vypadat trochu jinak, ale stále by se měly chovat konzistentně. Tlačítko v systému Windows je stále tlačítkem v systému Linux.
Když vstoupí do hry tovární metoda, nemusíte přepisovat logiku dialogu pro každý operační systém. Pokud deklarujeme tovární metodu, která produkuje tlačítka uvnitř základní třídy dialogu, můžeme později vytvořit podtřídu dialogu, která vrací tlačítka ve stylu Windows z tovární metody. Podtřída poté zdědí většinu kódu dialogu ze základní třídy, ale díky tovární metodě může na obrazovce vykreslit tlačítka vypadající jako Windows.
Aby tento vzor fungoval, musí základní třída dialogu práce s abstraktními tlačítky: základní třída nebo rozhraní, které následují všechna konkrétní tlačítka. Tímto způsobem zůstane kód dialogového okna funkční bez ohledu na to, s jakým typem tlačítek pracuje.
Tento přístup můžete samozřejmě použít i na další prvky uživatelského rozhraní. S každou novou tovární metodou, kterou přidáte do dialogu, se však přiblížíte vzoru abstraktní továrny. Nebojte se, o tomto vzoru si promluvíme později.