مراجعة - معالجة الأخطاء
جزء من قسم Logic & Flow في رحلة C# على Coddy — الدرس 30 من 66.
التحدي
متوسطقم بإنشاء طريقة تسمى processUserData تقوم بما يلي:
- تأخذ معاملين: سلسلة نصية
filePathوعدد صحيحuserAge - تستخدم عبارة
usingلقراءة السطر الأول من الملف الموجود فيfilePath - تتحقق من أن
userAgeيقع بين 18 و 120 (شاملاً) - إذا كان العمر غير صالح، قم برمي استثناء مخصص يسمى
InvalidUserAgeExceptionمع الرسالة "Age must be between 18 and 120" - إذا كان الملف غير موجود، قم بالتقاط
FileNotFoundExceptionواطبع "User file not found" - في حالة حدوث استثناء IO آخر، قم بالتقاطه واطبع "Error reading user data: [exception message]"
- لأي استثناءات أخرى، اطبع "An unexpected error occurred"
- قم بإرجاع محتوى الملف في حالة النجاح أو "No data" في حالة حدوث أي استثناء
جرّب بنفسك
using System;
using System.IO;
class ProcessUserData
{
// أنشئ استثناءك المخصص هنا
public static string processUserData(string filePath, int userAge)
{
// اكتب كودك هنا
}
}جميع دروس Logic & Flow
1المصفوفات متعددة الأبعاد
أساسيات المصفوفات ثنائية الأبعادتعريف وتهيئة المصفوفات ثنائية الأبعادالوصول إلى عناصر المصفوفة ثنائية الأبعادالحلقات المتداخلة مع المصفوفات ثنائية الأبعادالمصفوفات المتعرجة (Jagged Arrays)عمليات المصفوفات الشائعةمراجعة - المصفوفات متعددة الأبعاد4تقنيات التحكم في التدفق
الإرجاع المبكرشروط الحمايةجمل القفز (goto)Break و Continueتسطيح الشروط المتداخلة7المعاملات المنطقية المتقدمة
التقييم المختصرالمعاملات المنطقية الشرطيةأولوية المعاملاتمراجعة - المعاملات المتقدمة2اتخاذ القرارات المتقدم
الشروط المتعددةالمنطق البولياني المعقدمقارنة بين If و Switchجمل Switch المتداخلةمراجعة - القرارات المتقدمة5معالجة الاستثناءات
أساسيات Try-Catchأنواع الاستثناءاتكتل Catch المتعددةالتعامل مع الملفاتكتلة FinallyUsing مقابل Try-Finallyاستثناءات مخصصةمراجعة - معالجة الأخطاء8نظام تحليل البيانات
إعداد جمع البياناتمنطق إدخال البيانات11HashSet الجزء الأول
ما هو الـ HashSet؟إضافة عنصرحذف عنصرالتحقق من وجود عنصرالفراغ والحجمملخص - HashSet3تحسينات الحلقات التكرارية
أداء الحلقات التكراريةالتكرار عبر البيانات المعقدةأنواع الحلقات التكراريةإعادة هيكلة الحلقات التكراريةملخص - الحلقات المحسنة6التعامل مع الـ Null
أساسيات الـ Null Referenceأنواع القيم القابلة للـ Nullأنماط التحقق من الـ Nullالبرمجة الدفاعيةملخص - أمان الـ Null