4 Aralık 2014 Perşembe

Singleton Class (Tek Örneğe Sahip Sınıf)

Singleton class'lar kodlama yaparken performans açısından sıkıntı verebilecek durumların önüne geçmeye ve ayrıca oluşabilecek karmaşıklığı engellemeye yarayan bir kodlama tercihidir. Bu class'ın örneği (instance) en fazla bir tane olur. Kodlama esnasında bu class'ın ihtiyaç duyulan bileşenleri bu örnek üzerinden gerçekleştirilir.



Görüldüğü üzere sınıfın constructor'unun erişilebilirliği private olarak belirlenmiştir. Bu sayede dışarıdan yapılan yeni bir nesne oluşturma istekleri erişim sağlayamayacağından dolayısıyla nesne oluşturulamayacak ve hata alınacaktır. Ben bu örnekte en yalın halini gösterdiğim için constructor (yapıcı)'un içini boş bıraktım.


Burada görüldüğü gibi singleton class'a ait yeni bir nesne oluşmasına izin verilmemiştir.


Bu tek olan nesneyi oluşturmak için tipinin static olması gerekir ki (burada static değişkeni döndüren metodumuz da değişken static olduğu için static yapılmıştır) dışarıdan sınıfın ismini kullanarak erişelim. Bu erişim eğer sağlanan ilk erişim ise tek nesne yaratılacak ve referans değişken belirtmemiz üzere bize döndürülecektir. İlk erişim değilde sonraki erişimlerde ilk erişimde yaratılmış olan nesne bize döndürülecektir. Yukarıdaki resimde bu sınıf içindeki bir public metoda erişimin sağlanabileceği tek yöntem görülmektedir. Singleton class kodlama, bir sınıftaki her işlemin tek bir nesne üzerinde olması gerektiği zamanlarda tercih edilir.

Hiç yorum yok:

Yorum Gönder