انتقل إلى المحتوى

00 · آليات Python اللازمة للدورة

آليات Python اللازمة للدورة

ابدأ بتوجيه المعاملات والمزيّنات وdataclass لتتبع التعبير حتى أسلوب المكتبة.

قبل هذا الفصل

تستطيع قراءة الدوال والفئات والشروط وتعليقات الأنواع البسيطة.

بعد هذا الفصل تستطيع
  • شرح التعريف الرياضي لـ «آليات Python اللازمة للدورة» بكلماتك
  • تحديد تمثيله في بيانات Python
  • توقع تنفيذ صغير من الشفرة الفعلية
التعريف الرياضي

في Python يطلب `a + b` و`a == b` الأسلوبين `__add__` و`__eq__`. يستقبل المزيّن كائن الدالة ويستبدله وقت التعريف.

تمثيل البيانات

تحفظ dataclass المجمدة قيمًا غير قابلة للتغيير. داخليًا يعيد أسلوب `@log` نتيجة ورسالة مؤجلة، وتعرض اللفافة النتيجة فقط.

التنفيذ في Python

`+` → `__add__`; `==` → `__eq__`; `@log` → `inner`

التنفيذ والاختبارات للقراءة مع الفصل

peano/utils.py · tests/test_utils.py

التعريف الرياضي

التعريف الرياضي

في Python يطلب a + b وa == b الأسلوبين __add__ و__eq__. يستقبل المزيّن كائن الدالة ويستبدله وقت التعريف.

تمثيل البيانات

تمثيل البيانات

تحفظ dataclass المجمدة قيمًا غير قابلة للتغيير. داخليًا يعيد أسلوب @log نتيجة ورسالة مؤجلة، وتعرض اللفافة النتيجة فقط.

التنفيذ في Python

التنفيذ في Python

يستدعي inner الأسلوب الأصلي ويفصل (result, message) ويسجل الرسالة عند الحاجة ثم يعيد result، بينما يحفظ @wraps البيانات الوصفية.

المطابقة الدقيقة المستخدمة في الدورة:

`+` → `__add__`; `==` → `__eq__`; `@log` → `inner`

مسار التنفيذ

مسار التنفيذ

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

توقع قبل التشغيل

حدّد الشفرة التي يستدعيها `structural_str()` و`+` واكتب السطرين المتوقعين.

تجربة · آليات Python اللازمة للدورة لم يُشغّل
⌘ / Ctrl + Enter
المخرجات
اكتب توقعك أولًا ثم شغّل.

التحقق بالاختبارات

التحقق بالاختبارات

تحمي الاختبارات النتيجة والتوقيع العام والتقييم المؤجل للرسالة.

النطاق والحدود

النطاق والحدود

لا نعيد شرح الصياغة الأساسية، بل البرمجة الوصفية الضرورية لقراءة المكتبة.

أي عبارة تصف تنفيذ «آليات Python اللازمة للدورة» وصفًا صحيحًا؟