Wzorce projektowe: Abstract factory

Wzorzec Abstract Factory jest bardzo bliskim krewnym wzroca Factory Method. Oba wzroce należą do grupy wzorców konstrukcyjnych – jedyna różnica między nimi jest taka, że Factory method tworzy jeden obiekt, a abstract factory całą grupę powiązanyc obiektów. W opisie wzorca factory method tworzyliśmy Napoje : Wino, Piwo, Kawa lub Woda. Nie było zdefiniowane więcej szczegółów. Jednakże w naszej alikacji potrzbujemy czegoś więcej. Każdy napój powinien byc podany w odpowiednim naczyniu (Kufel, Kieliszek, Kubek lub Szklanka) oraz z odpowiednim dodatkiem ( Ser do Wina, Sernik do Kawy, Orzeszki do Piwa). W takiej sytuacji najlepiej wykorzystać wzorzec abstract factory. Tworzymy interfejsy Dodatek oraz Szkło i klasy implementujące te interfejsy do wykorzystania w naszej fabryce. Następnie abstrakcyjną klasę bazową w której umieścimy ogólne metody naszej implementacji. Oraz utworzymy klasę pochodną w której umieścimy wszystkie szczegóły tworzenie grupy obiektu. […]