Mojo Academy · درس

التدمير و__del__

نظّف الموارد عند انتهاء عمر القيمة

الدرس 4 من 413 خطوة

التدمير و__del__ درس مجاني في Mojo Academy على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Mojo Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Mojo Academy 4 دروس في المجموع.

لكل قيمة نهاية

عندما تعود القيمة غير مطلوبة، تنتهي حياتها ويدمّرها Mojo. وهذه فرصتك لتنظيف ما كانت تملكه. 🧹

دالة التدمير

يستدعي Mojo دالة خاصة تُسمّى __del__ لتدمير القيمة. وتعمل تلقائيًا عندما تخرج القيمة من النطاق.

fn __del__(owned self):
    pass

توقيت حتمي

يدمّر Mojo القيم عند نقطة متوقعة، فور استخدامها للمرة الأخيرة. ولا حاجة إلى انتظار جامع القمامة.

الاستخدام الأخير، لا نهاية الكتلة

يشغّل Mojo الدالة __del__ مباشرة بعد آخر استخدام للقيمة، وغالبًا قبل انتهاء الكتلة. وبذلك تُحرَّر الموارد في أقرب وقت ممكن.

حرّر ما تملكه

إذا كان النوع يملك مخزنًا مؤقتًا في الكومة، فإن __del__ هو المكان الذي تحرّره فيه. ويمنع ذلك تسرّب الذاكرة بمرور الوقت.

أنت مسؤول عن التنظيف

داخل __del__ تكون القيمة مملوكة، لذا يمكنك تفكيك مواردها بأمان. وبعد ذلك، لا تعود القيمة موجودة.

غالبًا ما تُولَّد تلقائيًا

بالنسبة إلى الأنواع البسيطة، لا تحتاج إلى كتابة أي شيء. إذ يولّد Mojo دالة تدمير تنظّف كل حقل بالتتابع، فتتجنب تسرّبات الذاكرة.

متى تخصّصها

اكتب دالة __del__ الخاصة بك عندما تدير موردًا خامًا، مثل تخصيص ذاكرة أو واصف ملف، يحتاج إلى تحرير صريح.

تُشغَّل مرة واحدة، بدقة

تُدمَّر كل قيمة مرة واحدة بالضبط. وينقل النقل الملكية، لذا لا يشغّل __del__ إلا المالك الأخير، مما يتجنب التحرير المزدوج.

لا استخدام بعد التدمير

بمجرد اكتمال __del__، يضمن Mojo زوال القيمة. وتمنعك قواعد الملكية لديه من الوصول إلى البيانات المحرَّرة.

أمان بلا جامع قمامة

يمنحك التدمير الحتمي تحكمًا شبيهًا بـ C مع أمان مدمج. فالتنظيف يتم في الوقت المناسب وبصورة متوقعة وتلقائية.

تحقق سريع

لنتحقق من التدمير.

مراجعة

تعمل __del__ عندما تنتهي حياة القيمة، بصورة حتمية ولمرة واحدة بالضبط، مما يتيح لك تنظيفها بأمان من دون جامع قمامة. 🎯

البدء مجانًا

تعلم Mojo مع معلم ذكاء اصطناعي — مجانًا

اكتب وقم بتشغيل أكوادك الفعلية في المتصفح، واحصل على مساعدة فورية من معلم ذكاء اصطناعي متاح 24/7، واستمر من حيث توقفت على الويب أو في التطبيق.

الدورات
30
الدروس
120

الأسئلة الشائعة

هل درس «التدمير و__del__» مجاني؟

نعم — نص درس «التدمير و__del__» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Mojo Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Mojo Academy 4 دروس في المجموع.

ماذا ستتعلم في «التدمير و__del__»؟

نظّف الموارد عند انتهاء عمر القيمة تتمرن على Mojo Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Mojo Academy؟

لا تُشترط خبرة سابقة. Mojo Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.

كم من الوقت يستغرق درس «التدمير و__del__»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Mojo Academy هذا؟

نعم. كل درس في Mojo Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. دلالات النسخ مقابل النقل
  2. دالة __copyinit__
  3. دالة __moveinit__
  4. التدمير و__del__
← العودة إلى Mojo Academy