تقييم الدرس 10
مخطط التسلسل وتصميم واجهة API
أجب عن الأسئلة ثم اضغط «صحّح ورقتي» في آخر الصفحة. ← العودة إلى الدرس
أسئلة التقييم
تقييم الدرس 10: مخطط التسلسل وتصميم واجهة API. إجاباتك تُحفظ تلقائيًّا على هذا الجهاز؛ أجب ثم اضغط «صحّح ورقتي».
1السؤال الأول: اختر الإجابة الصحيحة
1) ما الذي يرتب الرسائل في مخطط التسلسل؟
2) كل سهم من الواجهة إلى الخادم في مخطط التسلسل يصبح غالبًا:
3) حقل مطلوب ناقص في جسم الطلب. الرمز المناسب:
4) لماذا توصف واجهة
API قبل البرمجة؟5) في مخطط الحالات، ماذا يمثل السهم؟
2السؤال الثاني: صح أم خطأ
1) يكفي أن يرسم مخطط التسلسل المسار الناجح فقط.
الصواب: خطأ
2)
participant في Mermaid تعرّف مكوّنًا في مخطط التسلسل.الصواب: صح
3) رمز 201 يعني أن المورد أُنشئ.
الصواب: صح
4) في مخطط الحالات، الانتقال الذي لا سهم له مسموح.
الصواب: خطأ
5) بوابة الدفع يمكن أن تكون مشاركًا في مخطط التسلسل.
الصواب: صح
3السؤال الثالث: أكمل الفراغات من القائمة المنسدلة
1) في مخطط التسلسل، الرد يُرسم بالسهم .
الإجابة: -->>
2) الإطار الذي يرسم مسارات بديلة هو .
الإجابة: alt
3) المخطط الذي يحدد مراحل الطلب والانتقالات بينها هو مخطط .
الإجابة: الحالات
4السؤال الرابع: أسئلة عملية
1) ماذا يفعل الخادم إن فشل الدفع حسب المخطط؟
2) من أي حالة يمكن الوصول إلى
paid؟3) أرسلنا طلبًا ينقصه traineeId. ما جسم الاستجابة؟ POST /api/enrollments
const express = require('express');const app = express();app.use(express.json()); const courses = [{ id: 1, title: 'تصميم الويب', capacity: 2 }];const enrollments = []; app.post('/api/enrollments', (req, res) => { const { traineeId, courseId } = req.body; if (!traineeId || !courseId) return res.status(400).json({ error: 'traineeId و courseId مطلوبان' }); const course = courses.find(c => c.id === courseId); if (!course) return res.status(404).json({ error: 'الدورة غير موجودة' }); const taken = enrollments.filter(e => e.courseId === courseId).length; if (taken >= course.capacity) return res.status(409).json({ error: 'الدورة مكتملة' }); const e = { id: enrollments.length + 1, traineeId, courseId, status: 'pending' }; enrollments.push(e); res.status(201).json(e);}); app.listen(3000);
الاستجابة الصحيحة:
{"error":"traineeId و courseId مطلوبان"}أجب عن الأسئلة ثم اضغط «صحّح ورقتي».