مستوى ماجستير • بدون خبرة مسبقة

مساران دراسيان: التأسيس (بايثون) وتعلّم الآلة

تصميم متجاوب ومريحاجستير بدون خلفية برمجية. الأسابيع قابلة للطي. استخدم الألسنة للتبديل بين المسارين.

CS50 التأسيسي — نسخة بايثون

المدة: 12 أسبوعًا مناسب للمبتدئين الأدوات: Python, VS Code, GitHub, SQLite, Flask
الأسبوع 0 — التهيئة والتفكير الحاسوبي
  • لماذا علوم الحاسوب مهمة في البحث والصناعة.
  • الخوارزميات في الحياة اليومية؛ التفكيك والتجريد.
  • تهيئة البيئة: بايثون، VS Code، Git، GitHub.
  • أول برنامج وأساسيات سطر الأوامر.
مختبر صغير: خط أنابيب Hello World (تحرير ← تشغيل ← commit ← push).
الأسبوع 1 — أساسيات بايثون
  • المتغيرات، الأنواع، التعبيرات، الإدخال/الإخراج.
  • الشروط والحلقات؛ عقلية تصحيح الأخطاء.
واجب برمجي: حاسبة عبر CLI، وتحديات FizzBuzz.
الأسبوع 2 — هياكل البيانات الأساسية
  • السلاسل والتقطيع؛ القوائم وقوائم الفهم.
  • الصفوف (tuples) والمجموعات والقواميس؛ متى نستخدم كلًا منها.
واجب برمجي: عدّ تكرار الكلمات واستخراج أهم k كلمات.
الأسبوع 3 — الدوال والوحدات
  • تعريف الدوال؛ المعاملات وقيم الإرجاع.
  • أساسيات العودية؛ جولة في المكتبة القياسية.
واجب برمجي: مسائل عودية + حزمة أدوات صغيرة utilities.
الأسبوع 4 — الخوارزميات وتحليل التعقيد
  • البحث الخطي مقابل الثنائي؛ الفرز (فقاعي، إدراج، دمج).
  • تحليل Big‑O؛ مفاضلات الزمن/الذاكرة.
واجب برمجي: ترتيب لوحة المتصدرين مع قياس الأداء.
الأسبوع 5 — نموذج الذاكرة والتجريد
  • الأسماء مقابل الكائنات؛ قابلية التغيير والنسخ؛ مطبّات التقطيع.
  • نمذجة البيانات بقوائم/قواميس متداخلة.
واجب برمجي: مرشّح صور ثنائي الأبعاد (تدرّج رمادي/تمويه/حواف) ببايثون.
الأسبوع 6 — البرمجة كائنية التوجه
  • الفئات والطرائق وdunder methods.
  • الإخفاء، الوراثة، التركيب.
واجب برمجي: نظام حسابات/محفظة مع اختبارات وحدات.
الأسبوع 7 — قواعد البيانات وSQL
  • النمذجة العلائقية؛ المفاتيح الأساسية/الخارجية.
  • SELECT وWHERE وGROUP BY وJOIN؛ ربط SQLite مع بايثون.
واجب برمجي: قاعدة تسجيل طلبة/مقررات مع تقارير.
الأسبوع 8 — أساسيات الويب
  • دلالات HTML5؛ تخطيط CSS؛ مبادئ الوصول.
  • مقدمة Flask؛ القوالب والتوجيه.
واجب برمجي: موقع شخصي مع نموذج تواصل يعمل عبر Flask.
الأسبوع 9 — واجهات برمجة التطبيقات وJSON
  • طرائق HTTP؛ الطلبات؛ استهلاك واجهات عامة.
  • تحليل JSON والتحقق من صحته.
واجب برمجي: لوحة طقس (مع تخزين مؤقت) عبر API مفتوح.
الأسبوع 10 — الأمن والأخلاقيات
  • التجزئة والـsalting لكلمات المرور؛ التخزين الآمن.
  • الحوسبة المسؤولة، الخصوصية، الرخص.
واجب برمجي: مدير كلمات مرور مصغّر (محلي، مموّه/مُجزّأ).
الأسبوع 11 — التحضير للمشروع الختامي
  • تحديد النطاق، قصص المستخدم، المعالم، إعداد المستودع.
مُسلَّم: مقترح + إطارات Wireframes + مسودة قاعدة بيانات.
الأسبوع 12 — المشروع الختامي
  • التنفيذ وعرض المشروع.
المُخرجات: مستودع الكود، README، فيديو قصير، تقرير موجز.