1/10/2010

Yegane Tasarım Deseni ( Singleton)

Yegane tasarım deseni, veya bilinen adıyla Singleton, sistemlerde yine sık olarak kullanılan desenlerden birisidir. GOF sınıflandırmasında yaratılışsal desenler içerisinde yer alır. Bence uygulaması en kolay pattern’dir.

Tanımı : Yegane sınıflarlar, belli bir bağlam içerisinde sadece bir örneğe sahip olabilirler.



Gerçek bir örnek verelim. Yapılandırma değerlerimizi dosyadan okuduğumuzu varsayalı. Her değer okumak istediğimizde, gidip bunu dosyayı açarak okumak mantıklı olmayacaktır. Bütün yapılandırıcı değerler dosyadan bir kere okunduktan sonra, bunları hafızadan almak daha yapılabilir bir çözüm olur.

YeganeSinif : YapilandirmaOkuyucu

Gerçekten çok basit bir desendir. Yapilandirma okuyucunun private bir constructor’ı vardır ve bu sınıfı kullanmak isteyen diğer sınıflar, YapilandirmaOkuyu.Ornek property’sinini kullanmalıdır. Ornek property’si gerçek yegane örneği taşıyan static alan’ı kontrol eder, eğer daha önceden örnek buraya atanmışsa, aynısını kullandırtır. Daha önceden hiç örnek yaratılmamışsa, yaratır ve static alanımıza atadıktan sonra kullanılmak üzere dışa sunar. Bırakalım kodlar açıklasın:

Hiç yorum yok: