codequick-darkmode-logo
تسجيل الدخولتسجيل الاشتراك
دورة Node.js

المنهج الدراسي:

دورة Node.js

26 دروس 180 أسئلة البرمجة عبر الإنترنت


ما الموضوعات التي ستُغطى في الدورة؟

مقدمة إلى Node.js

  1. كلمات الافتتاح ونظرة عامة على الدورة:

    • كلمات الافتتاح.

    • ما سيتم تغطيته في الدورة ومقدمة حول Node.js.

    • التأكيد على العمل مع مستودعات الكود.

  1. كتابة خادم أساسي:

    • بناء خادم بسيط أولي.

    • شرح ما هو الخادم وكيفية التعامل مع طلبات واستجابات HTTP.

    • فهم الرموز الحالة وإرجاع JSON مقابل HTML.

  1. التعامل الأساسي مع الطلبات:

    • مقدمة في نقاط نهاية خادم API.

    • تعريف مسارات متعددة لمعالجة الطلبات.

  1. التعامل المتقدم مع طلبات الخادم:

    • فهم بنية طلب HTTP.

    • شرح أكواد الحالة وسلوك الخادم.

  1. التحضير لكتابة واجهة برمجة تطبيقات Restful:

    • مقدمة في واجهات برمجة تطبيقات Restful.

    • فهم QueryString ومعاملات الطلب.

العمل مع نظام الملفات

  1. قراءة الملفات في Node.js:

    • العمل مع وحدة نظام الملفات (fs).

    • استخدام الدالة readFile بشكل غير متزامن.

    • استخدام الدالة readFileSync بشكل متزامن.

    • مقدمة إلى وحدات fs و path.

    • إنشاء خادم مع نقاط نهاية متعددة.

    • حفظ الملفات النصية وملفات JSON.

  1. حفظ الملفات في Node.js:

    • استخدام الدالة writeFile بشكل غير متزامن لكتابة الملفات.

    • استخدام الدالة writeFileSync بشكل متزامن لكتابة الملفات.

    • معالجة الأخطاء في الخادم.

  1. حذف الملفات في Node.js:

    • حذف الملفات باستخدام unlinkSync.

    • استخدام الدلائل في نظام الملفات.

    • وظيفة للتحقق مما إذا كان الملف موجودًا في نظام الملفات.

  1. التعامل مع طلبات POST:

    • هيكلية الخادم الأساسية.

    • التعامل مع طلبات post.

    • استخدام Postman لإنشاء طلبات get و post.

  1. استخدام التحقق في الخادم:

    • كتابة خادم ذو معنى.

    • استخدام التحققات والأخطاء في الخادم.

    • إنشاء خادم يتعامل مع طلبات متعددة (قراءة، كتابة، حذف ملفات من نظام التشغيل).

كتابة سيرفر باستخدام Express

  1. مقدمة في استخدام Express:

    • خلفية عن مكتبة express.

    • استخدام مكتبة express لكتابة خادم.

    • استخدام وظائف send، sendStatus، و json.

    • معالجة طلبات get.

  1. التعامل مع Querystring و Params:

    • استخدام req.query مع express.

    • استخدام req.params مع express.

    • كتابة خادم بيانات الإدارة باستخدام نظام الملفات.

  1. التعامل مع طلبات POST في الخادم:

    • التعامل مع طلبات post باستخدام express.

    • شرح استخدام middleware.

    • إضافة التحقق من الأرقام في الخادم.

  1. هندسة الخادم:

    • هندسة الخادم في express.

    • استخدام express.Router للتعامل مع توجيه الخادم.

    • إضافة وبناء controllers في الخادم.

    • إضافة وبناء services في الخادم.

  1. استخدام ال Middlewares في Express:

    • فهم ال Middlewares في express.

    • تضمين ال Middlewares بشكل صحيح في controllers.

    • كتابة التحققات باستخدام ال Middlewares.

MongoDB

  1. مقدمة إلى MongoDB:

    • مقدمة إلى قواعد البيانات.

    • الاختلافات بين قواعد البيانات العلائقية وغير العلائقية.

    • مقدمة إلى MongoDB والحالات الشائعة لاستخدامها.

    • ربط الخادم express بـ MongoDB.

    • مقدمة إلى استخدام واجهة المستخدم الرسومية mongo.

  1. حفظ واسترجاع السجلات:

    • تعريف المخططات والمراجعة على الأنواع الشائعة.

    • إنشاء سجل في MongoDB باستخدام وظيفة save.

    • البحث عن السجلات في MongoDB باستخدام وظيفة find.

    • استخدام مرشحات شائعة مثل gte$, $gt, $lte, $lt, و eq$.

  1. استعلامات متقدمة في MongoDB:

    • فهم معرف ObjectId.

    • شرح وظيفة toJSON.

    • استخدام استعلام findById في MongoDB.

    • تحديث السجلات باستخدام findByIdAndUpdate.

    • استخدام عامل inc$.

    • استخدام وظيفة count في MongoDB.

    • تحديد القيم الافتراضية للمخطط في MongoDB.

  1. استعلامات الحذف والعوامل الأساسية:

    • حذف السجلات باستخدام findByIdAndDelete.

    • استخدام عامل push$.

    • معالجة طلبات فشل الخادم (500).

  1. تجميعات متقدمة في MongoDB:

    • بناء pipeline متقدم واستخدام التجميعات.

    • فرز البيانات في استعلامات MongoDB.

    • استخدام عوامل التشغيل الشائعة مثل sum، $max، $min، و avg$.

  1. علاقات متقدمة بين المجموعات في MongoDB:

    • شرح ربط المجموعات باستخدام ref.

    • استخدام إجراء populate في MongoDB.

    • شرح متعمق لإنشاء معرف في MongoDB.

أمان الخادم مع المصادقة

  1. مقدمة في JWT:

    • خلفية حول أمان الخادم.

    • مقدمة إلى حزمة jsonwebtoken.

    • إنشاء الرمز الأول.

    • استخدام وظيفة verify للتحقق من صحة الرمز.

  1. كتابة API آمن:

    • إضافة طبقة الأمان إلى الخادم.

    • بناء Middleware لأمان الخادم.

    • تنفيذ الأمان بواسطة JWT على الخادم الذي نكتبه.

  1. استخدام مكتبة Crypto:

    • خلفية حول استخدام التشفير في الخادم.

    • شرح لوظائف الهاش لتجزئة كلمات المرور.

    • إضافة الملح إلى المخطط لتعزيز الأمان.

    • شرح الهجمات المحتملة.

  1. التواصل بين الخوادم:

    • استخدام مكتبة axios للتواصل بين الخوادم.

    • جلب البيانات من خادم آخر من خلال الخادم الذي نكتبه.

    • تخزين البيانات في MongoDB للبيانات المجلوبة من خادم خارجي.

  1. كلمات الختام:

    • كلمات ختامية لتلخيص الدورة.