Tasarım Desenleri – Bölüm 4

Merhaba arkadaşlar,

Bugün tasarım desenleri serimizde bölüm 4 olan Prototype Pattern’ini inceleyeceğiz. Klasik olarak önce patterni anlatmaya çalışacağız daha sonrada örnekle pekiştireceğiz.

Prototype pattern, Creational Patterns altında yani nesnenin oluşması ile ilgili olan tasarım desenlerinde yer alır.  Dofactory.com’a göre orta seviye kullanım sıklığı bulunmaktadır. Kısaca nesnenin bir prototipten kopyalanarak oluşmasını sağlar. Peki bu pattern neden kullanılır?
Prototype pattern genel olarak nesnelerin üretim maliyetini azaltarak, geliştirme ve performans kriterlerinde avantaj sağlamak için kullanılır.

Shallow Copy ve Deep Copy olmak üzere iki tür nesne kopyalama işlemi bulunmaktadır. Bunlardan kısaca bahsetmek gerekirse ;

Shallow Copy : Yeni bir nesne üretilmemekte, nesnenin bellekteki referansı üzerinden işlem yapılmaktadır.

Deep Copy : Nesne birebir kopyalanmakta ve farklı referanslar üzerinden işlem yapılabilmektedir.

Gelelim patternimizin UML diyagramına;

dofactory-prototype
dofactory-prototype

Prototype: Nesnenin kopyalanmasını sağlayan Clone metodunu barındıran soyut sınıf.
ConcretePrototype: Patternnin uygulanacağı nesnelerdir.
Client: Patternin kullanımını talep edecek istemci.

Şimdi bunu somut bir örnekle pekiştirelim. Örneğimizde takım nesnemizi Prototype Pattern kullanarak üreteceğiz.

Evet arkadaşlar bu hafta size Prototype Patternini anlatmaya çalıştım. Umarım faydalı olmuştur.
Herkesin Ramazan ayını kutlarım kalın sağlıcakla… 😀

Kaynak Kod => https://github.com/EnesAys/DesignPatterns

Kaynaklar

https://www.dofactory.com/net/prototype-design-pattern
https://www.gencayyildiz.com/blog/c-prototype-design-pattern-prototip-tasarim-deseni/
https://refactoring.guru/design-patterns/prototype/csharp/example
https://www.dotnettricks.com/learn/designpatterns/prototype-design-pattern-dotnet

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir