Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [Wzorce] Jaka jest różnica pomiędzy wzorcem strategia a fabryka?
deirathe
post 26.05.2009, 10:23:28
Post #1





Grupa: Zarejestrowani
Postów: 426
Pomógł: 32
Dołączył: 24.05.2007

Ostrzeżenie: (0%)
-----


Właściwie to co je różni, bo dla mnie one robią to samo. Strategia pozwala rozbić rozwiązywanie danego problemu na klika podklas które zajmują się nim na różne sposoby i to samo wg mnie robi fabryka- kilka klas posiadających jeden interfejs rozwiązujących problem na różne sposoby. :?


--------------------
Kawałek mojego blogu
Everything should be as simple as possible but not simpler.
A Einstein
Go to the top of the page
+Quote Post
dr_bonzo
post 26.05.2009, 10:34:29
Post #2





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


Strategy - chodzi o wymienny algorytm
http://thecorporatecode.wordpress.com/2007...tern-explained/

http://en.wikipedia.org/wiki/Strategy_pattern:
Cytat
The strategy pattern is useful for situations where it is necessary to dynamically swap the algorithms used in an application. The strategy pattern is intended to provide a means to define a family of algorithms, encapsulate each one as an object, and make them interchangeable. The strategy pattern lets the algorithms vary independently from clients that use them.



Factory - tworzeie obietkow
http://en.wikipedia.org/wiki/Factory_Pattern


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
deirathe
post 26.05.2009, 10:38:17
Post #3





Grupa: Zarejestrowani
Postów: 426
Pomógł: 32
Dołączył: 24.05.2007

Ostrzeżenie: (0%)
-----


Czyli jeżeli mówimy o strategy, to np. mam sobie jakiś plik do wyszukania, jeżeli nie znajdę go za pomocą jednej instancji danej klasy to tworzę drugą innej klasy z tym samym interfejsem i dalej próbuję,a w factory mam wiele rozwiązań ale używam tylko 1, które mi pasuje?

Ten post edytował deirathe 26.05.2009, 10:39:24


--------------------
Kawałek mojego blogu
Everything should be as simple as possible but not simpler.
A Einstein
Go to the top of the page
+Quote Post
LBO
post 26.05.2009, 10:51:52
Post #4





Grupa: Zarejestrowani
Postów: 1 415
Pomógł: 117
Dołączył: 7.09.2005
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Różnica jest i to duża. Świadczy o tym już sam typ tych dwóch wzorców.
Fabryka to wzorzec kreacyjny. Wykorzystuje się go, by stworzyć obiekty, wykorzystując ujednolicony interfejs.
Strategia to wzorzec operacyjny, kontroluje jak wykonuje się program.

edit:
Cytat(deirathe @ 26.05.2009, 11:38:17 ) *
Czyli jeżeli mówimy o strategy, to np. mam sobie jakiś plik do wyszukania, jeżeli nie znajdę go za pomocą jednej instancji danej klasy to tworzę drugą innej klasy z tym samym interfejsem i dalej próbuję,a w factory mam wiele rozwiązań ale używam tylko 1, które mi pasuje?


Nie do końca. We wzorcu strategii bardziej rozchodzi się o to, żeby wyodrębnić algorytm szukania (w plikach, w bazie, wśród wzorków na na mojej pościeli etc biggrin.gif) i być w stanie przypisać i wymieniać go w czasie działania programu.

Ten post edytował LBO 26.05.2009, 10:53:35
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 15.08.2025 - 04:23