تخطَّ إلى المحتوى

🦅 شرح Swift

معالجة الأخطاء

الدرس 22 من 29· ⏱ 1 دقائق قراءة· 🗓 آخر تحديث: ٢٧ يونيو ٢٠٢٦

تعريف الأخطاء

enum LoginError: Error {
    case emptyPassword
    case wrongCredentials
}

دالة قد ترمي خطأ (throws)

func login(_ password: String) throws {
    if password.isEmpty {
        throw LoginError.emptyPassword
    }
    print("تسجيل دخول ناجح")
}

do / try / catch

do {
    try login("")
} catch LoginError.emptyPassword {
    print("كلمة المرور فارغة")
} catch {
    print("خطأ: \(error)")
}

try? و try!

let result = try? login("123")   // nil عند الخطأ بدل رميه
// let forced = try! login("123") // يتعطّل عند الخطأ — بحذر

defer للتنظيف

func process() {
    defer { print("تنظيف") }   // يُنفَّذ عند الخروج دائمًا
    print("معالجة")
}

🎯 التالي: إدارة الذاكرة (ARC).

شرح معالجة الأخطاء — Swift بالعربي
معالجة الأخطاءSwift بالعربي · The Code Fix

📚 لمزيد من التعمّق في Swift، راجِع كتاب Swift الرسمي.

هل كان هذا الدرس مفيدًا؟