Singleton (Tekillik) Tasarım Şablonu
Kas 27th, 2008 | Yazar: Özcan Acar | Kategori: Tasarım Şablonları (Design Patterns)Bazı şartlar altında bir sınıftan sadece bir nesnenin oluşturulması ve oluşturulan bu nesnenin
tüm sistemde kullanılması gerekebilir. Örneğin bilgibankası için bir connection pool
(bilgibankası bağlantı havuzu) sadece bir defa oluşturulmalı ve kullanılmalıdır. Bu durumda
Singleton tasarım şablonu kullanılarak, bir sınıftan sadece bir nesnenin oluşturulması
sağlanabilir.
Bu yazıyı PDF olarak edinebilirsiniz.
Singleton (Tekillik) Tasarım Şablonu (136.1 KiB, 4.718 yükleme)
Konuyla İlgili Kitaplar
Tasarım Şablonları (Design Patterns) kategorisinden son 5 yazı
- Decorator Tasarım Şablonu - July 24th, 2010
- Java Enum ile Singleton Tasarım Şablonu - February 2nd, 2010
- Intercepting Filter Tasarım Şablonu - December 9th, 2009
- Builder Tasarım Şablonu - November 17th, 2009
- Service Locator Tasarım Şablonu - October 30th, 2009
yazdır
|







Merhaba,
Bir hususu eklemek istedim. Java 5′ten önce bahsettiğiniz şekilde yapılan “double checked locking”in hatalı çalıştığını bu yüzden Java 5 öncesi sürümlerde Singleton nesnesinin lazy olarak değil de sınıfın static olgusu ayağa kaldırılırken yaratılması gerektiğini söylüyorlar:
private static SingletonObject instance = new SingletonObject();
Java 5 ile gelen “volatile” anahtar sözcüğü ile “double checked locking” kullanılmalı. Ayrıntı bilgi için:
http://www.cs.umd.edu/~pugh/java/memoryModel/DoubleCheckedLocking.html
Kolay gelsin.