Sobes.tech
Junior — Middle

Singleton deseni nedir ve dikkate alınması gereken avantajları ve dezavantajları nelerdir?

sobes.tech yapay zeka

AI'dan gelen yanıt

Singleton Deseni, bir sınıfın yalnızca bir örneği olmasını sağlar ve bu örneğe küresel erişim noktası sunar.

Avantajlar:

  • Tekil nesnenin oluşturulması üzerinde kontrol.
  • Paylaşılan kaynaklara veya ayarlara erişim kolaylığı.

Dezavantajlar:

  • Küresel durum nedeniyle testlerde sorunlara yol açabilir.
  • Bağımlılıkların tersine çevrilmesi ilkelerini ihlal eder ve bakımı zorlaştırabilir.
  • Çok iş parçacıklı ortamlarda ek senkronizasyon gerektirir.

iOS için Swift örneği:

class Singleton {
    static let shared = Singleton()
    private init() { }

    func doSomething() {
        print("Bir işlem gerçekleştiriliyor")
    }
}

// Kullanım
Singleton.shared.doSomething()