Junior — Middle
Xəta idarəetməsi kontekstində Error və Exception sinifləri arasındakı fərq nədir?
sobes.tech Süni İntellekt
AI-dan cavab
iOS (Swift) daxilində, Error protokoldur və xətaları təsvir edən və atıla bilən tiplər tərəfindən tətbiq olunmalıdır. Exception kimi ayrıca bir tip Swift-də mövcud deyil, amma digər dillərdə (məsələn, Objective-C) kritik xətalar üçün istifadə olunan NSException kimi istisnalar mövcuddur və adətən try-catch mexanizmi ilə idarə olunmur.
Swift-də, idarə olunan xətalar üçün Error istifadə etmək və do-try-catch ilə idarə etmək tövsiyə olunur, gözlənilməz uğursuzluqlar üçün nəzərdə tutulmuş istisnalar deyil.
Swift-də xəta idarəetmə nümunəsi:
enum FileError: Error {
case fileNotFound
case unreadable
}
func readFile() throws {
throw FileError.fileNotFound
}
do {
try readFile()
} catch FileError.fileNotFound {
print("Fayl tapılmadı")
} catch {
print("Başqa xəta")
}