الأهداف العامة للدورة
- تمكين المشاركين من فهم أساسيات لغة Python وتطبيقها في تطوير التطبيقات.
- تعريف المشاركين بأطر العمل الحديثة مثل Django وFastAPI لبناء تطبيقات ويب قوية وسريعة.
- تدريب المشاركين على تصميم قواعد البيانات والنماذج وربطها بواجهات المستخدم.
- بناء واجهات برمجية (APIs) باستخدام Django REST Framework أو
- تمكين المشاركين من تطوير تطبيق متكامل من الصفر حتى النشر.
- تعريف المشاركين بمفاهيم الأمان، الأداء، واختبار التطبيقات.
محاور البرنامج التدريبي
اليوم الأول: مقدمة في Python وتطوير الويب
- أساسيات لغة Python: المتغيرات، الحلقات، الدوال، القوائم، القواميس.
- مقدمة في تطوير الويب: مفهوم الطلب (Request) والاستجابة (Response).
- الفرق بين Django وFastAPI: متى تختار كل إطار؟
- إعداد بيئة التطوير (Python + Pip + Virtual Environments).
- إنشاء مشروع بسيط باستخدام Django أو
اليوم الثاني: بناء النماذج وقواعد البيانات
- مقدمة في قواعد البيانات العلائقية (Relational Databases).
- إنشاء نماذج البيانات (Models) باستخدام ORM:
- Django ORM
- SQLModel أو SQLAlchemy (مع FastAPI)
- إجراء عمليات الترحيل (Migrations) وربط التطبيق بقاعدة البيانات.
- تنفيذ العمليات الأساسية: إنشاء، قراءة، تحديث، حذف (CRUD).
- العمل مع SQLite أو
اليوم الثالث: إنشاء الواجهات وتطوير APIs
- تطوير صفحات HTML ديناميكية باستخدام Django Templates.
- إنشاء REST APIs باستخدام:
- Django REST Framework
- FastAPI (مع وثائق تفاعلية تلقائية باستخدام Swagger).
- ربط الواجهة الأمامية بالبيانات عبر API باستخدام JavaScript (fetch/AJAX).
- معالجة البيانات والإدخال من المستخدم.
- التحقق من صحة البيانات (Validation) واستجابات الأخطاء.
اليوم الرابع: الأمان وتحسين الأداء
- حماية البيانات الحساسة ومصادقة المستخدمين (Authentication).
- إنشاء أنظمة تسجيل دخول وتفويض (Login/Auth):
- Django Auth
- OAuth2 وJWT في FastAPI
- حماية النماذج من هجمات XSS و
- تحسين الأداء باستخدام التخزين المؤقت (Caching) وضغط البيانات.
- مراجعة الشيفرة وتنظيمها باستخدام MVC (أو MVT في Django).
اليوم الخامس: المشروع العملي والنشر
- بناء مشروع متكامل (مثال: تطبيق مدونة أو إدارة مهام).
- إضافة لوحة تحكم إدارية (Admin Panel) في
- تجهيز المشروع للنشر:
- باستخدام Heroku، Render، أو
- إعداد ملفات الإعدادات، البيئة، والمتطلبات (requirements.txt).
- مراجعة نهائية وتقييم شامل للمخرجات.
- مناقشة خطوات التوسع المستقبلي والتكامل مع الواجهات الحديثة.