0%
التغليف والوراثة وتعدد الأشكال — الفصل 10

الفصل 10 — التغليف والوراثة وتعدد الأشكال

الجزء 1أ — تعلّم Dart · الفصل 10 من 62 · 7 ساعات

الفصل 10 — التغليف والوراثة وتعدد الأشكال

المستوى: متوسط المدة المقدّرة: 7 ساعات المتطلبات المسبقة: الفصل 09 — الباني (Constructors) والنمذجة ما ستتمكن من فعله في نهاية الفصل: حماية بيانات الفئة بأعضاء خاصة وبدوال getter وsetter مع التحقق من القيم، وبناء تسلسل هرمي للفئات باستخدام extends وsuper، وإعادة تعريف الدوال باستخدام @override، وكتابة شيفرة متعددة الأشكال تعالج Player وEnemy وBoss بالطريقة نفسها.


10.0 — أهداف الفصل

في نهاية هذا الفصل ستكون قادرًا على:

  • ذكر ركائز البرمجة كائنية التوجّه (POO) الثلاث التي يتناولها هذا الفصل؛
  • شرح مفهوم التغليف بأسلوبك الخاص؛
  • إظهار الخطر الناتج عن خاصية عامة يمكن تعديلها بأي طريقة بشكل ملموس؛
  • التصريح عن عضو خاص باستخدام البادئة _؛
  • توضيح أن نطاق _ هو المكتبة (الملف) وليس الفئة؛
  • كتابة getter يكشف قيمة للقراءة فقط؛
  • كتابة setter يتحقق من القيمة قبل قبولها؛
  • كتابة دوال خاصة مساعدة للاستخدام الداخلي؛
  • بناء فئة Player مغلّفة بالكامل، بحيث تبقى الأرواح محصورة دائمًا بين 0 وحدّ أقصى؛
  • شرح ما هي الوراثة وما فائدتها؛
  • استخدام extends لإنشاء فئة فرعية؛
  • تحديد ما يُورَّث وما لا يُورَّث بدقة؛
  • استدعاء باني الفئة الأب باستخدام super؛
  • استدعاء دالة من الفئة الأب باستخدام super.methode()؛
  • إعادة تعريف (override) دالة موروثة؛
  • استخدام التعليق التوضيحي @override بشكل صحيح؛
  • شرح تعدد الأشكال من خلال مثال؛
  • المرور على List<Character> تحتوي على كائنات Player وEnemy؛
  • استخدام is وas لاختبار النوع وتحويله؛
  • بناء التسلسل الهرمي Character → Player / Enemy / Boss؛
  • التعرّف على الحالات التي تكون فيها الوراثة خيارًا سيئًا.

التعليقات

التعليقات مدعومة عبر GitHub Discussions

سجّل الدخول باستخدام GitHub للمشاركة في النقاش

تم نسخ الرابط!