مجموعات الأخطاء المستنتجة
دعوا Zig يجمع أخطاءكم تلقائياً
مجموعات الأخطاء المستنتجة درس مجاني في Zig Academy على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Zig Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Zig Academy 4 دروس في المجموع.
سرد الأخطاء أمر ممل
قد تكون تسمية كل خطأ يمكن للدالة إرجاعه مهمة شاقة، خصوصًا عندما تستدعي دوال أخرى قابلة للفشل. يستطيع Zig استنتاج المجموعة.
اتركوا المجموعة من دون تحديد
اكتبوا !T فقط من دون شيء قبل علامة التعجب. يدرس Zig جسم الدالة ويحدد كل خطأ يمكنها إنتاجه.
fn parse(s: []const u8) !u32 {
// ...
}يجمعها المصرّف
يُجمع تلقائيًا كل try وكل خطأ مُرجع داخل الجسم في مجموعة أخطاء مستنتجة واحدة لتلك الدالة.
if (s.len == 0) return error.Empty;تبقى دقيقة
إذا أضفتم لاحقًا استدعاءً جديدًا قابلًا للفشل، تكبر المجموعة المستنتجة لتشمله. ولن تنسوا أبدًا تحديث قائمة مكتوبة يدويًا.
الاستنتاج عبر الاستدعاءات
إذا استخدمت دالتكم try مع استدعاء آخر قابل للفشل، تُضمَّن الأخطاء المحتملة للدالة المستدعاة في مجموعتكم المستنتجة أيضًا.
const f = try open(path);تظل المجموعات الصريحة أفضل أحيانًا
قد ترغبون أحيانًا في عقد عام ثابت. فتسمية المجموعة قبل ! تمنع أي خطأ خارجها، وهو ما لا يفعله الاستنتاج.
fn load() FileError!Data {}مقايضة في سطر واحد
المجموعات المستنتجة مريحة وتحدّث نفسها، أما المجموعات الصريحة فدقيقة ومستقرة. اختاروا وفقًا لما إذا كان يجب أن يظل العقد ثابتًا.
الفحص باستخدام @errorReturnTrace
يمكنكم الاستدلال على الأخطاء وقت التشغيل أيضًا. ففي إصدارات التصحيح، يحتفظ Zig بـerror return trace يوضّح المكان الذي بدأ فيه الفشل.
ممتازة للدوال المساعدة الداخلية
يبرز الاستدلال في الدوال المساعدة الخاصة التي لا تحتاج إلى واجهة برمجية عامة صارمة. دعوا Zig يتولى مسك السجلات هناك.
تظل خاضعة للتحقق بالكامل
سواء استُدلّ عليها أو صُرّح بها صراحةً، يجب أن يعالج المستدعون كل خطأ. يوفر الاستدلال جهد الكتابة، لا الأمان؛ إذ يظل المصرّف صارمًا.
خيار افتراضي عملي
تستخدم دوال Zig كثيرة ببساطة !T وتدع الاستدلال يعمل. احتفظوا بالمجموعات المسماة للحدود التي تريدون تثبيتها.
تحقق سريع
تُعرَّف دالة بنوع الإرجاع !u32 ومن دون مجموعة أخطاء قبل علامة التعجب. ماذا يفعل Zig؟
مراجعة
اطّلعتم على مجموعات الأخطاء المستدل عليها من خلال !T المجردة، وكيف تكبر مع جسم الدالة، ومتى يكون اختيار المجموعة الصريحة أفضل. ✅
الأسئلة الشائعة
هل درس «مجموعات الأخطاء المستنتجة» مجاني؟
نعم — نص درس «مجموعات الأخطاء المستنتجة» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Zig Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Zig Academy 4 دروس في المجموع.
ماذا ستتعلم في «مجموعات الأخطاء المستنتجة»؟
دعوا Zig يجمع أخطاءكم تلقائياً تتمرن على Zig Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Zig Academy؟
لا تُشترط خبرة سابقة. Zig Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.
كم من الوقت يستغرق درس «مجموعات الأخطاء المستنتجة»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Zig Academy هذا؟
نعم. كل درس في Zig Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- مجموعات الأخطاء واتحاد !T
- إرجاع الأخطاء من الدوال
- نشر حالات الفشل باستخدام try
- مجموعات الأخطاء المستنتجة