Sobes.tech
Junior — Middle

Dasturlashda yopilish tushunchasi va uning qo'llanilishini tushuntiring

sobes.tech AI

AIdan javob

Yopiq (closure) - bu funksiyadir, u bilan birga uning atrofidagi leksik kontekst, bu esa tashqi funksiyaning bajarilishi tugagach ham tashqi muhitdagi o'zgaruvchilarga kirishni saqlab qoladi.

Yopiqchalar qo'llanilishi:

  • Global o'zgaruvchilarni ishlatmasdan funksiyalar chaqirilishi o'rtasida holatni saqlash.
  • Ma'lumotlarni inkapsulyatsiya qilish va maxfiy o'zgaruvchilar yaratish.
  • Standart parametrlar yoki qisman parametrlar bilan funksiyalar yaratish.

Swift (iOS) misoli:

func makeIncrementer(amount: Int) -> () -> Int {
    var total = 0
    let incrementer: () -> Int = {
        total += amount
        return total
    }
    return incrementer
}

let incrementByTen = makeIncrementer(amount: 10)
print(incrementByTen()) // 10
print(incrementByTen()) // 20

Bu yerda, incrementer tashqi makeIncrementer funksiyasidan total va amount ga kirishni saqlab qoladigan yopiqdir.