المشروع الموجه (Project) — بناء تطبيق Python متكامل — من الفكرة إلى النشر (Deployment)
- الهدف (Objective): إنجاز مشروع Python من البداية إلى النهاية بتطبيق كل مستوى من الدليل — من الأساسيات (Basics) إلى الإنتاج (Production).
- المواد (Materials): مذكرة Python أدناه (الصياغة (Syntax) والأوامر الأساسية (Commands)) للاحتفاظ بها في متناول اليد.
- المنهجية (Method): خطوة لكل مستوى. اختر مشروعًا واحدًا يُحفزك (مدير مهام (Task Manager)، تتبع نفقات (Expense Tracker)، واجهة مصغرة (Mini-API)، تحليل ملف CSV) وطوّره تدريجيًا.
⬇️ حمّل مذكرة Python (TXT) (Cheat Sheet)
الخطوة 0 · المستوى 0 — تجهيز الورشة (N0) (Setup)
ثبّت Python وVS Code، وتحقق من «python --version»، وجرّب سكربت أول + REPL. اختر فكرة مشروعك وهدفه الملموس.
الخطوة 1 · المستوى 1 — ترميز المنطق الأساسي (N1) (Core Logic)
اكتب قلب البرنامج بالمتغيرات (Variables) والشروط (Conditions) والحلقات (Loops) والدوال (Functions). فكك المشكلة إلى دوال صغيرة قابلة لإعادة الاستعمال (DRY).
الخطوة 2 · المستوى 2 — هيكلة البيانات (N2) (Data Structures)
صمم بياناتك بالهياكل المناسبة (قوائم (Lists)، قواميس (Dictionaries))، وأنشئ صنفًا أو صنفين (POO)، واحفظ/حمّل في ملف (JSON) واجعله موثوقًا بـ try/except.
الخطوة 3 · المستوى 3 — احترافية الشيفرة (N3) (Professional Code)
قطّع إلى وحدات (Modules)، وأنشئ venv + requirements.txt، وأضف تلميحات نوعية (Type Hints) واكتب أول اختبارات pytest. استعمل أداة Pythonic (فهم (Comprehension)، مزخرف (Decorator)) حيث يلزم.
الخطوة 4 · المستوى 4 — اختيار التخصص (N4) (Specialization)
أعطِ مشروعك بُعدًا: اعرضه كواجهة (API) (FastAPI)، أو أضف تحليل بيانات (Data Analysis) (pandas + رسم (Plot))، أو أتمت مهمة / استخراجًا (Scraping). لبنة واحدة تكفي.
الخطوة 5 · المستوى 5 — التصنيع والنشر (N5) (Deployment)
نظّف الشيفرة (PEP 8 وblack وflake8)، وحوّه (Containerize) بملف Dockerfile، ونسخ (Version) على GitHub مع خط إنتاج CI (pytest عبر GitHub Actions)، ثم انشر على الإنترنت (Render/Railway).
معايير النجاح (Success Criteria)
- شيفرة منظمة في دوال/وحدات (Functions/Modules)، مقروءة ومتوافقة مع PEP 8 (black + flake8).
- بيانات مُهيكلة بشكل صحيح (Structured Data)، محفوظة (ملف/JSON) (Persistence) والأخطاء مُعالَجة (try/except).
- بيئة قابلة لإعادة الإنتاج (venv + requirements.txt) واختبارات pytest ناجحة.
- تخصص مُضاف (واجهة (API) أو بيانات (Data) أو أتمتة (Automation))، ويُفضَّل التطبيق منشورًا على الإنترنت عبر خط إنتاج CI/CD.