İçeriğe geç

Swift ile Lazy Veriables

swift

Merhabalar bu yazımda Swift ile Lazy ön ekli değişkenlerin ne işe yaradığı hakkında bilgi verip örnek ile açıklayacağım.

İOS derleyicisinde ARC (Automatic Referance Counter) denilen bir sistem mevcut. Bu sistem her değişkenin referans sayısını çağrılma sayısını sayıyor ve buna göre daha sonra hafızadan silme işlemi gerçekleştiriyor.

Normalde yazdığımız structları farklı bir sınıfta bir değişkende çağırdığımızda direk initalization işlemi gerçekleşir. Biz bu değişkeni kullanmasak bile, ancak Lazy ön ekini kullandığımız zaman bu olaydan kurtulmuş, performans olarak uygulamaya yarar sağlamış oluruz. Böylelikle sadece biz değişkeni çağırıp kullandığımızda yükleme yapar.

struct Person {
    
    var name:String
    var age:Int
    var gender:String
    
    init(name:String,age:Int,gender:String) {
        
        print("initalize")
        
        self.name = name
        self.age = age
        self.gender = gender
    
    }
    
    var returnAge:Int {
        
        get {
            return age
        }
        
    }
    
}


class A {
    
    lazy var person = Person(name: "Kenan", age: 21, gender: "Male")
   // var person = Person(name: "Kenan", age: 21, gender: "Male")
    
}

var obj = A()
obj.person // initalize

Normal olarak Lazy ön ekini getirmeden deneyip sonucu playground‘da görebilirsiniz.

Tarih:Swift

Tek Yorum

Bu yazı yorumlara kapalı, ama geri izlemeler ve pingback'ler açık.

Copyright © 2020 Kenan Atmaca