Bugün sizlerle yazılım geliştirmede kullanılan tasarım desenlerinden Decorator desenini inceleyeceğiz.Tasarım desenleri kod çokluğunu ve kod tekrarını önlemek amacıyla aynı zamanda bellekte nesnelerin daha az yer kaplamasını sağlamak gibi amaçlar için kullanılmaktadır.
Decorator Deseni Nedir ?
Decorator deseni, yazılım geliştirirken eklemiş olduğumuz nesnelere dinamik bir yapı kurup o nesne özelinde farklı işlemler yapmamızı sağlayan tasarım desenidir.
Tasarım desenini incelemek amacıyla Visual Studio geliştirme ortamını açalım ve bir proje yapalım.
Resim-2
Create A New Project seçeneğine tıklayalım.
Resim-3
.Net Console App projesi seçelim ve Next seçeneği ile devam edelim.
Resim-4
Create seçeneği ile projemizi oluşturalım. Elimizde farklı markalara ait telefonlar olduğunu ve bu telefonlara özel günlerde indirim uygulatmayı düşündüğümüz bir senaryomuz olsun.
Resim-5
Öncelikle telefonlara ait özellikleri ekleyebileceğimiz bir Abstract sınıf ve onlardan kalıtım alan sınıflarımızı oluşturalım. Bu sınıfların özellikleri kalıtım alınan sınıflar ile aynı olsun.
Resim-6
Decorator sınıfımızı yazalım ve burada ilk yazmış olduğumuz Base nesnenin kullanılmasını sağlayalım. Daha sonra Özel günler için indirim sınıfımızı yazalım ve indirim oranını dinamik olarak dışarıdan almak için parametremizi sınıfa ekleyelim. Buraya sadece indirim oranı olarak değil de başka parametler de ekleyebilirsiniz. Şimdi desenimizi nasıl kullanacağımıza bakalım.
Resim-7
Telefon markalarımızı tanımladıktan sonra özel günlerde ilk telefon markası için indirim uyguladık. Programımızı çalıştıralım ve sonuçları görelim.
Resim-8
Vermiş olduğumuz indirim oranına göre fiyatlarımı uygulanmış oldu.
Böylece Decorator tasarım desenini öğrenmiş olduk.
Bir sonra ki makalede görüşmek dileğiyle.
Bu konuyla ilgili sorularınızı alt kısımda bulunan yorumlar alanını kullanarak sorabilirsiniz.
Referanslar
TAGs: design pattern,decorator design , decorator nedir, decorator tasarim deseni,c#,.net, decorator pattern