Sobes.tech
Junior — Middle

Bir bağlama sinif atributu kimi elan edilə bilərmi?

sobes.tech Süni İntellekt

AI-dan cavab

Bəli, iOS-da (Swift və ya Objective-C) sinifin atributları (xüsusiyyətləri) kimi closures (bağlamalar) elan etmək mümkündür. Bu, tez-tez callback-ləri ötürmək və ya hadisələri idarə etmək üçün istifadə olunur.

Məsələn, Swift-də:

class MyClass {
    var completionHandler: (() -> Void)?

    func doSomething() {
        // Bir iş görürük
        // ...
        // Əgər təyin olunubsa, bağlamanı çağırırıq
        completionHandler?()
    }
}

let obj = MyClass()
obj.completionHandler = {
    print("Tapşırıq tamamlandı")
}
obj.doSomething()

Bu yanaşma, sinifin davranışını xaricdən elastik şəkildə konfiqurasiya etməyə imkan verir, mantığı bağlamalar vasitəsilə ötürür.