![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 28.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
jak przeglądam różne strony to nie mogę znaleźć różnicy pomiędzy tymi dwoma wzorcami. Zazwyczaj jeden lub drugi wzorzec wygląda tak: są różne klasy, jest też specjalna klasa fabryki, która ma funkcję statyczną zwracającą instancję do jednej z klas. Wyboru zwrócenia instancji klasy dokonujemy zwykle w switch w zależności od przekazanego do funkcji parametru. Czy ktoś wie czym różni się Simple Factory od Factory Method ? Ten post edytował JAWS 18.01.2010, 16:24:08 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 199 Pomógł: 31 Dołączył: 22.03.2004 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
tu masz opisane co i jak
http://www.bnsit.pl/files/szkolenia/Wzorce_kreacyjne_GoF.pdf |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 28.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
chyba rozumiem.. czyli Factory Method, różni się od Simple Factory tym, że to, co jest wykonywane w klasie "klienta" w Simple Factory jest przeniesione do metody w Factory Method. Wywołanie metody fabrykującej jest uniwersalne, ponieważ klasy dziedziczą funkcje fabrykującą, która uruchamia funkcje operujące na innych klasach. Klient tworzy obiekt klasy Factory Method i uruchamia tą uniwersalną metodę fabrykującą.
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 740 Pomógł: 15 Dołączył: 23.08.2004 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Simple Factory to pojedyncza funkcja lub metoda, która tworzy obiekt na podstawie podanych parametrów.
Z kolei Factory Method to metoda abstrakcyjna którą implementuje się w klasach potomnych. Sposób wywołania metody fabrykującej - tj. za pośrednictwem obiektu klasy macierzystej lub też bezpośrednio z obiektu klasy potomnej - nie ma znaczenia. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 2.09.2025 - 06:28 |