ASP.NET Core’da Strategy Pattern

Strategy Pattern Nedir ?

Strateji(Strategy) tasarım deseni, behavioral tasarım desenlerinden biridir. Bir dizi algoritma tanımlar, bu algoritmaların erişimi için arayüz sağlar ve algoritmaları tanımlarken birbirlerinin yerine kullanılabilir özellikte tasarlar. Ayrıca client runtime zamanında dilediği algoritmayı seçebilir. Yani, istenilen şartlara göre farklı sınıf ve metotların yazılarak kullanılmasını sağlayan bir tasarım desenidir.

Strategy Pattern Ne zaman Kullanılır?

Belirli bir iş için birden çok algoritmaya(yönteme) sahip olduğumuzda kullanılır.

Strategy Pattern Nasıl Kullanılır?

Öncelikle bir algoritma interface’i oluşturulur. Daha sonra oluşturulan interface’i implement edecek algoritma sınıfları yaratılır. Context sınıfı yaratılır. Bu sınıf içerisinde algoritma interface türünden algoritmaların set edilmesi için bir metod bulunur. Bu metod sayesinde Context sınıfı algoritma nesnesini tutmuş olur. Son olarak bir Client sınıfı oluşturulur. Bu sınıf Context sınıfından ve algoritma sınıflardan nesneler üreterek işlemlerin yapılmasını sağlar.

Özet

Strategy Pattern, verimli daha okunabilir ve bakımı kolay yazılımlar oluşturmamıza yardımcı olur. Çalışma zamanında dinamik olarak eklenebilen/değiştirilebilen yeniden kullanılabilir ve değiştirilebilir bileşenlerle yazılım oluşturmamızı sağlar.

Junior Software Developer