Oczywiście można to traktować jako rodzaj strategii, ale dotyczy to prawie wszystkich wzorów. Więc dlaczego?Dlaczego wzorzec strategii jest nazywany wzorem strategii?
Odpowiedz
Ponieważ niektóre elementy implementują strategie, "sposoby osiągnięcia czegoś".
Punkt wzorca strategii polega na umożliwieniu wyboru sposobu działania, "strategii" w czasie wykonywania.
Nazwa nie odnosi się do wzorca jako całości, odnosi się do obiektów we wzorcu, który wykonuje akcje.
Ideą wzorca strategii jest to, że "algorytmy można wybierać w środowisku wykonawczym." (Wikipedia, Strategy Pattern) Wzorzec, w istocie, polega na wybraniu odpowiedniej strategii (lub zachowania) w celu rozwiązania konkretnego problemu w czasie wykonywania. Dlatego jest to imię.
Czuje się bardziej odpowiednią definicją niż ta podana przez @RichieHindle. – jldupont
To prawda, że wszystkie wzorce są "strategiami" do projektowania aplikacji. Wzorzec strategii wymaga jednak złożonej logiki, algorytmów itp. I hermetyzuje go. Który oczyszcza twój kod, a także pozwala stosować różne strategie w zależności od różnych warunków.
Przykł. Napisałem skomplikowaną kalkulację odsetek dla Zabezpieczenia, a zamiast faktycznego posiadania kalkulacji wewnątrz klasy Zabezpieczenia przeniosłem ją do klasy Odsetki (strategia). Potem, kiedy zaczęli mi powtarzać, obliczenia muszą być inne, ponieważ obliczenia stopy procentowej były zgodne z interfejsem IInterestCalculation, mogłem zmienić i utworzyć nowe obliczenia tak bardzo, jak potrzebowałem, a klasa Zabezpieczeń pozostała niezmieniona ...
- 1. Używanie fabryki ze wzorem strategii
- 2. Wzorzec strategii i eksplozja klas akcji
- 3. Jak zaimplementować wzorzec strategii w C++ z std :: function
- 4. Wzorzec strategii i iniekcja zależności przy użyciu Unity
- 5. Parametryzowany wzór strategii
- 6. Różne parametry w wzorcu strategii
- 7. Gdzie jest korzyść z używania wzorca strategii?
- 8. Zalety/wady strategii Redis paginacji
- 9. Używanie równoległych strategii z monadami
- 10. Metodę szablonów i wzory szablonów strategii
- 11. Wzór strategii złożonej - java - Jak zły jest ten kod?
- 12. Dlaczego EclipseLink dodaje kolumnę dyskryminatora do powiązanej strategii dziedziczenia?
- 13. W "Wzorze strategii" nie możemy zrobić każdej strategii jako funkcji, ale nie jako klasy?
- 14. Najlepsze praktyki wdrażania strategii addin/addon/plugin
- 15. Szyny 4 - Wymyśl Omniautha (wiele strategii)
- 16. Strategiczny wzór - wybór strategii z licznikami
- 17. optymalnej strategii dla gry 2 graczy
- 18. Jak wdrożyć wzór strategii w programie Go?
- 19. Jak korzystać z równoległych strategii w Haskell
- 20. Devise Omniauth - konfigurowanie i definiowanie strategii
- 21. Wzór strategii C + 11 ze stanem
- 22. wiosna - hibernacja 5 konfiguracja strategii nazewnictwa
- 23. Język skryptów do opracowywania strategii handlowej
- 24. Dodawanie dodatkowych pól do lokalnej strategii passport.js
- 25. Modyfikowanie jeśli-else na wzór strategii
- 26. Jak rozmieścić rep: pliki strategii przez maven?
- 27. Jak używać wzorca strategii za pomocą C#?
- 28. Dobre wdrożenie Git przy użyciu strategii oddziału w Heroku?
- 29. Program pocztowy w języku Java za pomocą wzoru strategii
- 30. Dlaczego program Arduino jest nazywany szkicem?
Brzmi bardziej jak "taktyka" w tym momencie, nie? Czy "strategia" nie implikuje większego "wzorcowego planu" - podobnego paradygmatu? – jldupont
@jldupont: Nie obwiniaj mnie, nie nazwałem tego! :-) – RichieHindle
Tak, ale tak wiele z nich robi, fabryka na przykład ... – Peter