ما هي الاستثناءات؟
جزء من قسم Logic & Flow في رحلة Dart على Coddy — الدرس 38 من 65.
عندما تقوم بتشغيل برنامج، لا تسير الأمور دائمًا كما هو مخطط لها. في بعض الأحيان يواجه الكود الخاص بك مواقف غير متوقعة لا يمكنه التعامل معها بشكل طبيعي - وتسمى هذه الاستثناءات (exceptions).
الاستثناء هو خطأ وقت التشغيل يحدث أثناء تنفيذ برنامجك. وعلى عكس الأخطاء النحوية التي تمنع الكود الخاص بك من العمل على الإطلاق، تحدث الاستثناءات عندما يكون برنامجك قيد التشغيل بالفعل ولكنه يواجه مشكلة لا يعرف كيفية حلها.
تشمل المواقف الشائعة التي تسبب استثناءات في Dart محاولة تحويل نص غير صالح إلى رقم (مما يؤدي إلى إنشاء FormatException)، أو الوصول إلى عنصر قائمة غير موجود، أو القسمة على صفر. عندما يحدث استثناء ولا يتم التعامل معه بشكل صحيح، سينهار برنامجك بالكامل ويتوقف عن العمل.
الفكرة الجوهرية هي أن الاستثناءات متوقعة - يمكنك توقع مكان حدوثها وتجهيز الكود الخاص بك للتعامل معها بسلاسة. هذا يمنع الانهيارات ويسمح لبرنامجك بالاستمرار في العمل حتى عند حدوث خطأ ما.
ورقة مرجعية
الـ exception (الاستثناء) هو خطأ وقت التشغيل يحدث أثناء تنفيذ برنامجك، على عكس أخطاء بناء الجملة (syntax errors) التي تمنع الكود من العمل على الإطلاق.
تشمل الاستثناءات الشائعة في Dart ما يلي:
FormatException- محاولة تحويل نص غير صالح إلى رقم- الوصول إلى عنصر في قائمة غير موجود
- القسمة على صفر
عند حدوث استثناء وعدم التعامل معه بشكل صحيح، سيتعطل برنامجك بالكامل ويتوقف عن العمل. الاستثناءات متوقعة ويمكن التعامل معها بسلاسة لمنع الأعطال.
جرّب بنفسك
لا يتضمّن هذا الدرس تحدّيًا برمجيًا.
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Logic & Flow
1التعامل المتقدم مع القوائم
خصائص القائمة: first و lastحالة القائمة: isEmpty و isNotEmptyعكس القائمةالإضافة إلى القائمة: insertالحذف من القائمة: removeWhereالبحث في القائمة: indexOfفرز القائمةخلط القائمةملخص - منظم القوائم4معالجة الـ Map المتقدمة
التكرار عبر الـ Mapالتحقق من المفاتيح والقيمخصائص الـ Map: keys و valuesإضافة مشروطة: putIfAbsentإزالة العناصر من الـ Mapالـ Maps المتداخلةمراجعة - تحديث المخزون2عمليات القوائم الوظيفية
التحويل باستخدام 'map'التصفية باستخدام 'where'استخدام '.toList()'التحقق من الشروط باستخدام 'any'الشروط باستخدام 'every'البحث باستخدام 'firstWhere'مراجعة - تصفية البيانات5مشروع: حاسبة عربة التسوق
إعداد المشروعإضافة العناصر إلى العربة3المجموعات
ما هي المجموعة؟إنشاء مجموعةالإضافة والحذف من المجموعاتالتحقق من وجود عناصر في المجموعةتحويل قائمة إلى مجموعةاتحاد المجموعاتتقاطع المجموعاتالفرق بين المجموعاتمراجعة - قائمة ضيوف فريدة6أساسيات معالجة الأخطاء
ما هي الاستثناءات؟كتلة 'try-catch'التقاط الاستثناءات باستخدام 'on'كتلة 'finally'رمي استثناءملخص - القسمة الآمنة