Strategy Design Pattern Kod Örneğiyle
Apr 17, 2022
Strategy; Bir özelliğin birden farklı algoritmaları kullanılacağı zaman kullanabileceğimiz bir tasarım desenidir.
Wiki: https://en.wikipedia.org/wiki/Strategy_pattern
Senaryolar
- Birden farklı şifreleme metotları kullandığınızda farklı algoritmalar olacağından kullanabilirsiniz.
- Bir yol bulma algoritmasında örneğin araçla,otobüsle,bisikletle ve yürümeyle gibi algoritmaların ayrı ayrı yazılması gibi durumlar kullanılabilir.
Strategy maddelersek
- Özelliğimize ait bir interface veya abstract’ın yazılması
- Oluşturduğumuz Strategy sınıflarına interface veya abstract dahil edilmesi.
- Asıl özelliğimizde(Context) constructor metodunda Strategy sınıflarının interface veya abstract da göre oluşturulması.
- Context de setStrategy metodu ile farklı algoritmalara geçişinin sağlayabilmemiz.