قواعد القوائم
القوائم طريقة أساسية لتنظيم المعلومات. يدعم Markdown القوائم المرتبة وغير المرتبة والتداخل وقوائم المهام.
قائمة غير مرتبة
الصياغة الأساسية
استخدم - أو * أو + لإنشاء قائمة غير مرتبة:
- عنصر 1
- عنصر 2
- عنصر 3
* عنصر 1
* عنصر 2
* عنصر 3
+ عنصر 1
+ عنصر 2
+ عنصر 3نتيجة العرض:
- عنصر 1
- عنصر 2
- عنصر 3
نصائح لاختيار الرموز
| الرمز | الميزة | سيناريو مفضّل |
|---|---|---|
- | الأكثر شيوعاً وبسيط | موصى به عموماً |
* | يطابق تنسيق التأكيد | للحفاظ على نمط موحد |
+ | أقل استخداماً | للتمييز الخاص |
نصيحة: حافظ على رمز موحّد في كامل المستند.
قائمة مرتبة
الصياغة الأساسية
استخدم أرقاماً متبوعة بنقطة لإنشاء قائمة مرتبة:
1. البند الأول
2. البند الثاني
3. البند الثالثنتيجة العرض:
- البند الأول
- البند الثاني
- البند الثالث
أرقام العناصر
القيمة الفعلية للأرقام ليست مهمة؛ سيولّد Markdown التسلسل الصحيح:
1. البند الأول
3. البند الثاني
8. البند الثالثنتيجة العرض:
- البند الأول
- البند الثاني
- البند الثالث
رقم البدء
يمكنك تحديد رقم البدء:
3. البند الثالث
4. البند الرابع
5. البند الخامسنتيجة العرض:
- البند الثالث
- البند الرابع
- البند الخامس
قوائم متداخلة
تداخل أساسي
استخدم إزاحة (2–4 مسافات) لإنشاء تداخل:
- مشروع مستوى 1
- مشروع مستوى 1.1
- مشروع مستوى 1.2
- مشروع مستوى 2
- مشروع مستوى 2.1
- مشروع مستوى 2.1.1
- مشروع مستوى 2.1.2
- مشروع مستوى 2.2نتيجة العرض:
- مشروع مستوى 1
- مشروع مستوى 1.1
- مشروع مستوى 1.2
- مشروع مستوى 2
- مشروع مستوى 2.1
- مشروع مستوى 2.1.1
- مشروع مستوى 2.1.2
- مشروع مستوى 2.2
- مشروع مستوى 2.1
تداخل مختلط
يمكن تداخل القوائم المرتبة وغير المرتبة معاً:
1. عنصر مرتب 1
- عنصر فرعي غير مرتب 1.1
- عنصر فرعي غير مرتب 1.2
2. عنصر مرتب 2
1. عنصر فرعي مرتب 2.1
2. عنصر فرعي مرتب 2.2
- عنصر حفيد غير مرتب 2.2.1
- عنصر حفيد غير مرتب 2.2.2نتيجة العرض:
- عنصر مرتب 1
- عنصر فرعي غير مرتب 1.1
- عنصر فرعي غير مرتب 1.2
- عنصر مرتب 2
- عنصر فرعي مرتب 2.1
- عنصر فرعي مرتب 2.2
- عنصر حفيد غير مرتب 2.2.1
- عنصر حفيد غير مرتب 2.2.2
محتوى متعدد الفقرات داخل القوائم
استكمال الفقرات
لإضافة عدة فقرات داخل عنصر قائمة:
1. البند الأول
هذه هي الفقرة الثانية ضمن البند الأول. يجب الإزاحة للبقاء ضمن العنصر.
2. البند الثاني
هذه هي الفقرة الثانية ضمن البند الثاني.
هذه هي الفقرة الثالثة ضمن البند الثاني.
3. البند الثالثنتيجة العرض:
البند الأول
هذه هي الفقرة الثانية ضمن البند الأول. يجب الإزاحة للبقاء ضمن العنصر.
البند الثاني
هذه هي الفقرة الثانية ضمن البند الثاني.
هذه هي الفقرة الثالثة ضمن البند الثاني.
البند الثالث
كتل الشيفرة
لإضافة كتلة شيفرة ضمن قائمة:
1. تثبيت الاعتمادات
```bash
npm install expressإنشاء الخادم
javascriptconst express = require('express'); const app = express();تشغيل الخادم
### كتل اقتباس
لإضافة اقتباس ضمن قائمة:
```markdown
1. التحضير
> تأكد من وجود مساحة قرص كافية
> يُنصح بوجود 10GB على الأقل
2. ابدأ التثبيتقوائم المهام
الصياغة الأساسية
استخدم - [ ] لمهمة غير مكتملة، و- [x] لمهمة مكتملة:
- [x] مهمة مكتملة
- [ ] مهمة غير مكتملة
- [x] مهمة أخرى مكتملة
- [ ] عنصر للمتابعة لاحقاًنتيجة العرض:
- [x] مهمة مكتملة
- [ ] مهمة غير مكتملة
- [x] مهمة أخرى مكتملة
- [ ] عنصر للمتابعة لاحقاً
قوائم مهام متداخلة
- [x] تخطيط المشروع
- [x] تحليل المتطلبات
- [x] البحث التقني
- [ ] تصميم النموذج الأوّلي
- [ ] مرحلة التطوير
- [ ] تطوير الواجهة الأمامية
- [x] تخطيط الصفحات
- [ ] ميزات التفاعل
- [ ] تطوير الواجهة الخلفية
- [ ] تصميم API
- [ ] تصميم قاعدة البيانات
- [ ] مرحلة الاختبارنتيجة العرض:
- [x] تخطيط المشروع
- [x] تحليل المتطلبات
- [x] البحث التقني
- [ ] تصميم النموذج الأوّلي
- [ ] مرحلة التطوير
- [ ] تطوير الواجهة الأمامية
- [x] تخطيط الصفحات
- [ ] ميزات التفاعل
- [ ] تطوير الواجهة الخلفية
- [ ] تصميم API
- [ ] تصميم قاعدة البيانات
- [ ] تطوير الواجهة الأمامية
- [ ] مرحلة الاختبار
أخطاء شائعة وحلولها
1) إزاحة غير صحيحة
❌ خطأ: إزاحة غير متسقة
- عنصر 1
- عنصر فرعي 1.1
- عنصر فرعي 1.2 ← إزاحة خاطئة
✅ صحيح: حافظ على إزاحة متسقة
- عنصر 1
- عنصر فرعي 1.1
- عنصر فرعي 1.22) سطر فارغ بين العناصر
❌ خطأ: سطر فارغ غير ضروري يقطع القائمة
- عنصر 1
- عنصر 2 ← هذا ينشئ قائمتين منفصلتين
✅ صحيح: عناصر متتالية
- عنصر 1
- عنصر 23) نقص مسافة بعد الرقم
❌ خطأ:
1.الأول ← مسافة مفقودة
2.الثاني
✅ صحيح:
1. الأول
2. الثانيحالات خاصة
تهريب رموز القوائم
لعرض رموز القوائم في بداية السطر دون إنشاء قائمة:
\- هذا ليس عنصراً في قائمة
\* هذا أيضاً ليس عنصراً في قائمة
\1. هذا ليس عنصراً في قائمة مرتبةنتيجة العرض:
- هذا ليس عنصراً في قائمة * هذا أيضاً ليس عنصراً في قائمة \1. هذا ليس عنصراً في قائمة مرتبة
شيفرة داخل عناصر القوائم
- ثبّت `npm install package-name`
- شغّل `npm start`
- زر في المتصفح `http://localhost:3000`نتيجة العرض:
- ثبّت
npm install package-name - شغّل
npm start - زر في المتصفح
http://localhost:3000
روابط داخل عناصر القوائم
- [GitHub](https://github.com) - منصة استضافة الشيفرة
- [Stack Overflow](https://stackoverflow.com) - موقع أسئلة وأجوبة
- [MDN](https://developer.mozilla.org) - توثيق للمطوريننتيجة العرض:
- GitHub - منصة استضافة الشيفرة
- Stack Overflow - موقع أسئلة وأجوبة
- MDN - توثيق للمطورين
أفضل الممارسات
1) حافظ على الاتساق
✅ مُوصى به: استخدم رمزاً واحداً (مثلاً -)
- عنصر A
- عنصر B
- عنصر C
❌ غير مُوصى: خلط الرموز
- عنصر A
* عنصر B
+ عنصر C2) استخدم التداخل باعتدال
✅ مُوصى به: تداخل معتدل
- الميزات الرئيسية
- إدارة المستخدمين
- إدارة المحتوى
- ميزات مساعدة
- التسجيلات
- نسخ احتياطي للبيانات
❌ غير مُوصى: تداخل عميق جداً
- الميزات
- ميزات رئيسية
- ميزات جوهرية
- ميزات أساسية
- ميزات أولية ← عميق جداً3) تنظيم دلالي
✅ مُوصى به: تجميع منطقي
## أدوات التطوير
- محرر الشيفرة
- التحكم بالإصدارات
- أدوات التنقيح
## أدوات التصميم
- تصميم النماذج الأوّلية
- معالجة الصور
- تصميم الواجهات
❌ غير مُوصى: تجميع بلا منطق
- محرر الشيفرة
- تصميم النماذج الأوّلية
- التحكم بالإصدارات
- معالجة الصورمخرجات HTML
تحويل قوائم Markdown إلى HTML:
- عنصر 1
- عنصر 2تتحول إلى:
<ul>
<li>عنصر 1</li>
<li>عنصر 2</li>
</ul>1. عنصر 1
2. عنصر 2تتحول إلى:
<ol>
<li>عنصر 1</li>
<li>عنصر 2</li>
</ol>أمثلة عملية
قائمة التسوق
## قائمة مشتريات اليوم
### مستلزمات منزلية
- [ ] شامبو
- [ ] معجون أسنان
- [x] منشفة
### طعام
- [ ] حليب
- [ ] خبز
- [x] بيض
- [ ] فواكه
- [ ] تفاح
- [x] موز
- [ ] برتقالخطة تعلّم
## خطة هذا الشهر
1. **الأسبوع الأول**: أساسيات
- [x] قراءة الفصول 1–3
- [x] إتمام تمارين 1–10
- [ ] مشاهدة الدروس 1–5
2. **الأسبوع الثاني**: مشروع عملي
- [ ] إنشاء مشروع بسيط
- [ ] تنفيذ الوظائف الأساسية
- [ ] إضافة تنسيق الواجهة
3. **الأسبوع الثالث**: محتوى متقدم
- [ ] تعلم الميزات المتقدمة
- [ ] تحسين أداء المشروع
- [ ] كتابة اختبارات
4. **الأسبوع الرابع**: مراجعة وختام
- [ ] تنظيم الملاحظات
- [ ] التحضير للمشروع النهائي
- [ ] مراجعة النقاط المهمةقائمة وظائف API
## نقاط نهاية API
### إدارة المستخدمين
1. `GET /api/users` - جلب قائمة المستخدمين
- يدعم التصفح الصفحي
- يدعم فلاتر البحث
2. `POST /api/users` - إنشاء مستخدم جديد
- يتطلب صلاحية مدير
- تحقق من فرادة البريد الإلكتروني
3. `PUT /api/users/:id` - تحديث بيانات المستخدم
- لا يحدّث المستخدم إلا بياناته
- يمكن للمدير تحديث أي مستخدم
### إدارة المحتوى
- `GET /api/posts` - جلب قائمة المقالات
- `POST /api/posts` - إنشاء مقال جديد
- `DELETE /api/posts/:id` - حذف مقالقواعد ذات صلة
- قوائم المهام - ميزات مهام موسعة
- قوائم التعريف - تعريف المصطلحات
- قواعد الاقتباس - نصوص مقتبسة
- قواعد الشيفرة - تنسيق الشيفرة
تمارين
أنشئ الأنواع التالية من القوائم:
- هيكل عناصر بتداخل ثلاثي المستويات
- قائمة خطوات تقنية تتضمن أمثلة شيفرة
- قائمة معقدة تمزج المرتبة وغير المرتبة
- قائمة مشروع تحتوي على حالات مهام