Merhabalar, kendimi geliştirmek adına adım attığım bu yolda, aşağıda listesi olan design patternları , .net core 5 ile uygularken bir yandan not alıp diğer yandan da gerçek dünya projelerini uygulamaya çalışacağım.
-
Strategy Pattern
-
Template Pattern
-
Command Pattern
-
Observer Pattern
-
Chain of Responsibility Pattern
-
Composite Pattern
-
Decorator Pattern
-
Adapter Design Pattern
-
Structural (Yapısal)
-
Behavioral (Davranışsal)
-
Creational (Yaratışsal)
Strategy patterni, yaygın olarak kullanılan tasarım desenlerinden biridir. Strategy Design Pattern'in olayı, runtime esnasında bir objenin davranışını değiştirmemize imkan vermesidir. Bir işlemi yapabileceğimiz birden fazla algoritmaya sahipsek bu durumda ilgili pattern kullanılabilir.
Projenin amacı, 2 veritabanı arasında, runtime esnasında istediğini veritabanını seçerek geçiş sağlayabilmesidir.
Göründüğü üzere, Strategy design pattern'ı uyguladığımızda ayarlar sekmemizde 2 veritabanı seçeneğimiz gözükmekte. Buradan istediğimiz veritabanı seçimini yapabiliriz.
Sql Server'ı seçip verilerimizi ekledikten sonra görüntüleyebildik. Buraya kadar herşey zaten standart. Sonrasında veri tabanımızı runtime anında değiştirdik.
Bu sayede runtime anında veritabanımızı değiştirebildik ve strategy design patterni uygulamış olduk.
Template patterni daha çok sıralı operasyonları içeren fonksiyonellikleri ilgilendirmektedir. Öyle ki bu fonksiyonellikler içerisine dahil olan operasyonların bazıları, duruma göre farklı şekillerde uygulanmak istenebilir (Diğer fonksiyonlarda aslında standart olarak hep aynı işi yaparlar) Dolayısıyla fonksiyonelliğin sahiplendiği ve çalışma biçimleri değişkenlik gösterebilecek olan operasyonların kolayca genişletilebilmesi, sahip oldukları kod parçalarının yeniden kullanılabilirliğinin arttırılması (Code Reusability) noktasında bir çözüm gerekliliği ortaya çıkmaktadır. Template pattern burada çözüm olarak kullanılabilir.


