Junior — Middle
Proqramlaşdırma dillərində seçimli zəng zəncirlərinin istifadəsinin prinsipi ilə izah edə bilərsinizmi?
sobes.tech Süni İntellekt
AI-dan cavab
İstəyə bağlı zəncirlər (optional chaining) sintaktik şəkərdir ki, bu da obyektin iç-içə keçmiş xüsusiyyətlərinə və ya metodlarına təhlükəsiz şəkildə daxil olmağa imkan verir, hətta onların bəziləri nil (null) ola bilər. Bu, nil olan bir xüsusiyyətə giriş cəhdləri ilə əlaqəli icra zamanı səhvlərin qarşısını alır.
Məsələn, Swift-də, əgər sizdə nil ola biləcək obyekt varsa və onun xüsusiyyətinə daxil olmaq istəyirsinizsə, ? istifadə edirsiniz:
class Person {
var residence: Residence?
}
class Residence {
var numberOfRooms = 1
}
let john = Person()
// john.residence nil ola bilər
// Optional chaining olmadan, otaqların sayını almaq üçün yoxlamaq lazımdır:
if let roomCount = john.residence?.numberOfRooms {
print("Otaqların sayı: \(roomCount)")
} else {
print("Məskuniyyət haqqında məlumat mövcud deyil")
}
Burada, john.residence?.numberOfRooms nil qaytaracaq, əgər residence nildirsə, və səhv yaratmayacaq.
Beləliklə, optional chaining kodu sadələşdirir və onunla işləyərkən daha təhlükəsiz edir.