Temat: Abstract Object Factory (Fabryka Obiektów Abstrakcyjnych)...
Fabryka występuje tutaj jako twórca instancji klas, których normalnie nie można zainstancjonować wprost za pomocą konstruktora, np. dziedziczących po zadanych klasach abstrakcyjnych, czy implementujących wybrane interfejsy. Fabryka wybiera wtedy według znanych sobie kryteriów znaną publicznie klasę, której instancję następnie tworzy, bądź w locie tworzy nową klasą, dodając jej odpowiednie funkcjonalności sterujące jej zachowaniem. Także efektem tego fabryka jak mówisz jest w stanie tworzyć często całą rodzinę obiektów i bardzo dobrym przykładem jest rodzina iteratorów czy rodzina komponentów graficznych. Podsumowując ideą tego wzorca jest, abyśmy zwracając się do fabryki wiedzieli co chcemy dostać, a ona w sposób którego nie musimy znać ani rozumieć to dostarczała.