Junior — Middle
Leg het concept van closure uit en hoe het wordt gebruikt in programmeren
sobes.tech AI
Antwoord van AI
Closure (sluiting) is een functie die zich het omgevingsmilieu herinnert waarin hij werd gemaakt, inclusief toegang tot variabelen uit de externe scope, zelfs als dat gebied al uit de uitvoeringscontext is verdwenen.
In programmeren wordt een closure gebruikt voor:
- Het bewaren van de toestand tussen functieaanroepen zonder gebruik van globale variabelen.
- Het encapsuleren van gegevens en het creëren van private variabelen.
- Het maken van functies met standaardparameters die waarden behouden.
Voorbeeld in Swift (iOS):
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
Hier is incrementer een closure die de variabele total uit de externe functie vastlegt en opslaat, waardoor de toestand tussen oproepen behouden blijft.