Sobes.tech
Junior — Middle

Kun je praten over de belangrijke kenmerken van het gebruik van closures in programmeren?

sobes.tech AI

Antwoord van AI

Sluitingen (closures) zijn functies die de context waarin ze zijn gemaakt "herinneren", inclusief toegang tot variabelen uit de externe scope, zelfs nadat die scope niet meer actief is.

Belangrijke kenmerken van sluitingen:

  • Stellen je in staat om de toestand tussen functieaanroepen te behouden.
  • Worden gebruikt voor het maken van private variabelen en encapsulatie.
  • Worden vaak toegepast in asynchrone programmering en event handlers.

Voorbeeld in Swift:

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

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

Hier bewaart de sluiting de variabele total tussen de aanroepen, waardoor het mogelijk is om de waarde op te tellen.