Junior — Middle
Μπορείτε να εξηγήσετε τι σημαίνει η λέξη-κλειδί Defer και πώς χρησιμοποιείται στον προγραμματισμό;
sobes.tech AI
Απάντηση από AI
Η λέξη-κλειδί defer στον προγραμματισμό (π.χ., σε Swift ή Go) χρησιμοποιείται για την αναβολή της εκτέλεσης κώδικα μέχρι να εξέλθει το τρέχον πεδίο ορατότητας.
Στο iOS (Swift), το defer επιτρέπει να διασφαλιστεί η εκτέλεση ενός μπλοκ κώδικα στο τέλος της λειτουργίας, ανεξάρτητα από το πώς τερματίζει η λειτουργία — με επιτυχία ή με σφάλμα. Αυτό είναι χρήσιμο για την απελευθέρωση πόρων, το κλείσιμο αρχείων, την απελευθέρωση κλειδώσεων κ.λπ.
Παράδειγμα σε Swift:
func readFile() {
let file = openFile()
defer {
closeFile(file) // αυτός ο κώδικας θα εκτελεστεί στο τέλος της λειτουργίας
}
// εργασία με το αρχείο
if errorOccurred {
return // το `defer` θα εκτελεστεί και πάλι
}
// άλλες λειτουργίες
}
Έτσι, το defer βοηθά στη συγγραφή πιο καθαρού και ασφαλούς κώδικα, διαχειρίζοντας πόρους.