Photo by Árpád Czapp / Unsplash

Property wrappers

Swift Jun 11, 2022

Property wrappers, Class'larımızda bir değer atarken veya bir değer okurken get ve set metotları ile istediğimiz gibi düzenleme yapabilmekteyiz. Ancak bu durum çok fazla tekrar ediyorsa ve benzer işlemleri tekrar tekrar yapmak gerekiyorsa kullanılabileceğiniz güzel bir özelliktir. Böylece kodların kalabalık olmasının da önüne geçilmiş olur. Swift 5.1 ile eklenmiştir. Aşağıda örnek bir kullanım gösterilmiştir.


//String içerisinde boşlukları siler

@propertyWrapper
struct Trimmed {
    private var str: String = ""
    var wrappedValue: String {
        get { str }
        set { str = newValue.trimmingCharacters(in: .whitespacesAndNewlines) }
    }
    init(wrappedValue: String) {
        self.wrappedValue = wrappedValue
    }
}

//PropertyWrapper'ımızı string degişkenlere tanımlıyoruz.
// Bir struct tipinde bir Employee class'ı içerisinde düşünün.

@Trimmed var firstName = ""
@Trimmed var lastName = ""

let employee1 = EmployeeStruct(firstName: " Furkan ", lastName: " Ozoglu ")

//İsim ve soyisim değişkeninde boşluklar silinmiş olacaktır.

Tags

Furkan Ozoglu

iOS Developer & Geomatics Engineer