Sobes.tech
Junior — Middle

El tudná magyarázni, hogy mit jelent a Defer kulcsszó, és hogyan használják a programozásban?

sobes.tech MI

Válasz az MI-től

A defer kulcsszó a programozásban (például Swift vagy Go nyelven) arra szolgál, hogy késleltessük a kód végrehajtását az aktuális hatókör elhagyásáig.

iOS (Swift) esetén a defer garantálja, hogy egy adott kódrészlet a függvény végén végrehajtódik, függetlenül attól, hogy a függvény sikeresen vagy hibával ér véget. Ez hasznos erőforrások felszabadítására, fájlok bezárására, zárolások feloldására stb.

Swift példában:

func readFile() {
    let file = openFile()
    defer {
        closeFile(file) // ez a kód a függvény végén fut le
    }
    // fájl kezelése
    if errorOccurred {
        return // a `defer` még így is lefut
    }
    // egyéb műveletek
}

Így a defer segít tisztább és biztonságosabb kód írásában, erőforrásokat kezelve.