في هذا الدرس 8تصفّح المواضيع
بعد أن تعرّفنا في الفصول السابقة من مادة تكنولوجيا الويب على كيفية اتصال الأجهزة عبر الشبكات، وكيف تستضيف الخوادم المواقع وتتبادل الرسائل مع متصفح الويب، ننتقل الآن إلى التخصص المسؤول عن كل ما تراه عينك وتتفاعل معه بيدك داخل شاشة المتصفح: تطوير الواجهة الأمامية (). فكل عنوان، وقائمة تنقل، وزر تفاعلي، وصورة متناسقة، وبطاقة منتج تراها في أي موقع أو تطبيق ويب هي ثمرة عمل تطوير الواجهة الأمامية.
قبل الغوص في تفاصيل هذا الدرس، استعرض جدول المصطلحات الأساسية التالية:
| المصطلح بالعربية | المصطلح بالإنجليزية | النطق التقني | المعنى المبسط |
|---|---|---|---|
| تطوير الواجهة الأمامية | فرونت إند ديفيلوبمنت | بناء الجزء المرئي والتفاعلي من الموقع الذي يظهر للمستخدم مباشرة داخل شاشة المتصفح. | |
| جهة العميل | كلاينت سايد | البيئة التي يُنفَّذ فيها الكود على جهاز المستخدم نفسه (داخل متصفح الهاتف أو الحاسوب). | |
| واجهة المستخدم | يوزر إنترفيس | العناصر البصرية المعروضة على الشاشة مثل الأزرار، الألوان، القوائم، الخطوط، وحقول الإدخال. | |
| تطوير الواجهة الخلفية | باك إند ديفيلوبمنت | بناء الجزء الخفي الذي يعمل على الخادم البعيد لإدارة قواعد البيانات والحسابات والصلاحيات. | |
| جهة الخادم | سيرفر سايد | العمليات البرمجية التي تُنفَّذ داخل خادم الويب البعيد قبل إرسال النتيجة إلى متصفح المستخدم. | |
| التطوير الشامل للواجهتين | فول ستاك ديفيلوبمنت | الجمع بين مهارات بناء الواجهة الأمامية في المتصفح وبناء الواجهة الخلفية وقواعد البيانات على الخادم. |
عندما تفتح منصة تعليمية أو متجراً إلكترونياً أو موقعاً إخبارياً، فإن كل ما تتعامل معه مباشرةً على شاشتك يندرج تحت الواجهة الأمامية ():
- هيكل المحتوى المعروض: العناوين، الفقرات النصية، الصور، الجداول، الأيقونات، ومشغلات الفيديو المرتبة أمامك.
- المظهر البصري والهوية: الألوان، نوع الخط وحجمه، المسافات بين البطاقات، ودعم الوضع الليلي والنهاري ().
- عناصر التفاعل الحي: أزرار النقر، القوائم المنسدلة، مربعات البحث، نماذج تسجيل الدخول، والرسائل التنبيهية الفورية.
يُطلق على تطوير الواجهة الأمامية في المراجع التقنية مصطلح التطوير من جهة العميل (). ويعود سبب هذه التسمية إلى معمارية «العميل والخادم» التي درستها سابقاً؛ حيث يمثل العميل () جهاز المستخدم نفسه (سواء كان حاسوباً محمولاً أو هاتفاً ذكياً أو جهازاً لوحياً) الذي يشغّل متصفح الويب:
- انتقال الملفات من الخادم إلى المتصفح: رغم أن ملفات الواجهة الأمامية تكون محفوظة في البداية على خادم الموقع، فإنها لا تعمل هناك؛ بل بمجرد كتابة عنوان الموقع يرسل الخادم نسخة من هذه الملفات عبر الإنترنت إلى متصفحك.
- معالج جهازك هو من ينفذ الكود: فور وصول الملفات إلى المتصفح، يتولى معالج جهازك () وذاكرته () قراءة هذه الملفات ورسم الشاشة وتشغيل التفاعلات الحية.
- استجابة لحظية دون انتظار الشبكة: لأن كود الواجهة الأمامية يعمل محلياً داخل التبويب المفتوح أمامك، فإن فتح قائمة منسدلة أو تبديل المظهر الليلي أو التنبيه بترك حقل فارغ يتم في أجزاء من الثانية دون الحاجة لإعادة تحميل الصفحة من الخادم.
تأمل المسار التوضيحي المبسط الآتي الذي يبين كيف تنتقل ملفات الواجهة الأمامية لتعمل داخل متصفح العميل:
[1. User Browser] --- GET https://closetag.com ---> [2. Web Server]
[1. User Browser] <-- Sends HTML + CSS + JS Files -- [2. Web Server]
[3. Client-Side ] --> Browser parses code & draws the interactive screen
كيف يحوّل متصفح الويب الملفات النصية القادمة من الخادم إلى شاشة ملونة نابضة بالحياة؟ دون الدخول في تعقيدات هندسية داخلية، ينجز المتصفح هذه المهمة عبر ثلاث خطوات بصرية واضحة:
- الخطوة 1 — بناء الهيكل الأساسي للعناصر: يقرأ المتصفح ملف الهيكل () ليعرف ما المحتويات الموجودة في الصفحة: عنوان رئيسي في الأعلى، وفقرة نصية، وصورة توضيحية، وزر في الأسفل.
- الخطوة 2 — تلوين العناصر وتنسيق مواقعها: يقرأ المتصفح قواعد التصميم () ليمنح كل عنصر لونه وحجم خطه ومكانه الدقيق على الشاشة بما يناسب حجم شاشة الهاتف أو الحاسوب.
- الخطوة 3 — تفعيل الاستجابة والتفاعل: يشغّل المتصفح أوامر التفاعل () لتصبح الصفحة جاهزة للاستجابة لنقرات الفأرة ولمسات الشاشة وإدخالات لوحة المفاتيح.
تأمل المخطط التوضيحي الآتي ثم جرّب المحاكي التفاعلي لتتبع مراحل ظهور الواجهة الأمامية على شاشة المتصفح:
مطور الواجهة الأمامية () هو المختص البرمجي الذي يبني الجزء المرئي والتفاعلي من مواقع وتطبيقات الويب. ويمتاز دوره بكونه حلقة الوصل الهندسية التي تجمع بين الحس البصري والمنطق البرمجي:
- محوّل التصاميم الثابتة إلى شاشات حية: يرسم المصممون شكل الموقع كصورة ثابتة غير قابلة للنقر، فيأتي مطور الواجهة الأمامية ليحول هذه الصورة عبر الكود إلى صفحة ويب حقيقية تنبض بالحركة والتفاعل.
- المسؤول عن سرعة وسلاسة الاستخدام: يحرص على أن تفتح الشاشة بسرعة، وأن تكون الأزرار والقوائم واضحة وسهلة اللمس على شاشات الهواتف والحواسيب.
- همزة الوصل مع الخادم الخلفي: عندما يبحث المستخدم عن منتج أو يسجل دخوله، يتولى مطور الواجهة الأمامية إرسال هذا الطلب إلى الواجهة الخلفية واستلام البيانات الجديدة وعرضها بأناقة على الشاشة.
ما المهام العملية التي ينجزها مطور الواجهة الأمامية في يوم عمله الفعلي داخل شركات البرمجة؟ تتوزع مهامه اليومية على أربع مراحل متكاملة:
- 1. دراسة المتطلبات واستلام ملفات التصميم: فحص اللوحات البصرية التي أعدّها المصمم لمعرفة المقاسات الدقيقة ودرجات الألوان والخطوط وسلوك كل شاشة.
- 2. برمجة مكونات الواجهة والأقسام: كتابة الكود الخاص ببناء أشرطة التنقل، والبطاقات، والنوافذ المنبثقة، والجداول، ونماذج الإدخال بطريقة منظمة يسهل إعادة استخدامها.
- 3. ضبط التجاوب مع مختلف أحجام الشاشات: التأكد من أن الصفحة تتكيف تلقائياً وتظهر بوضوح تام سواء فتحها الزائر من شاشة هاتف صغيرة أو شاشة حاسوب عريضة.
- 4. الفحص وإصلاح الأخطاء وتحسين السرعة: استخدام أدوات المطور في المتصفح () لاكتشاف أي خلل في المحاذاة أو الأزرار وضغط الصور لتسريع فتح الصفحة.
انظر إلى هذا المثال التوضيحي المبسط الذي يبيّن كيف يجتمع عنوان وزر تفاعلي في عنصر واجهة يبنيه مطور الواجهة الأمامية:
<div class="welcome-card">
<h2>Welcome to Front-End Development</h2>
<p>Click below to start your interactive journey.</p>
<button id="start-btn">Start Learning</button>
</div>
يُعد التمييز الدقيق بين الواجهة الأمامية () والواجهة الخلفية () حجر الزاوية لفهم كيف تعمل تطبيقات الويب الحديثة. قارن بينهما في الجدول الشامل الآتي:
| وجه المقارنة | الواجهة الأمامية () | الواجهة الخلفية () |
|---|---|---|
| مكان تشغيل الكود | داخل متصفح المستخدم () | داخل الخادم البعيد () |
| الظهور للمستخدم | مرئية بالكامل ويتعامل معها الزائر مباشرة | خفية تماماً ولا يراها الزائر على شاشته |
| المهمة الأساسية | عرض المحتوى، التنسيق البصري، التجاوب، والتفاعل مع النقرات | معالجة الحسابات، التحقق من الهوية، وإدارة قواعد البيانات |
| اللغات الأساسية | و و و | و و و و |
| امكانية قراءة الكود | مكشوف في المتصفح (يمكن لأي زائر فحصه عبر أدوات المتصفح) | محمي داخل الخادم ولا يُرسل نصه البرمجي للمتصفح |
هل يمكن لمبرمج واحد أن يتقن بناء الواجهة الأمامية في المتصفح وبناء الواجهة الخلفية على الخادم معاً؟ نعم، ويُسمى هذا المختص مطور الواجهتين الشامل ():
- معنى مصطلح : تشير كلمة إلى حزمة الطبقات التقنية الكاملة التي يقوم عليها الموقع؛ فالمطور الشامل يجمع بين مهارات طبقة العميل (بناء الشاشات والتفاعل) ومهارات طبقة الخادم (المنطق البرمجي وقواعد البيانات).
- بناء الميزة من البداية للنهاية: يستطيع المطور الشامل إنشاء جدول في قاعدة البيانات، وبرمجة خدمة الخادم، ثم تصميم شاشة المتصفح التي تعرض هذه البيانات للمستخدم.
- التدرج الطبيعي في التعلم: حتى المطور الشامل لا يبدأ بتعلم كل شيء في وقت واحد، بل يبدأ دائماً بإتقان أساسيات الواجهة الأمامية أولاً، ثم يتوسع خطوة بخطوة نحو الواجهة الخلفية.
لماذا تدرس وحدة الواجهة الأمامية في هذه المرحلة التأسيسية قبل أن تتخصص لاحقاً في تطوير الويب أو الأمن السيبراني؟ لأن فهم الواجهة الأمامية ركيزة لا غنى عنها في المجالين معاً:
- لطلاب تطوير الويب مستقبلاً: سواء اخترت التخصص في بناء الواجهات الأمامية، أو برمجة الواجهات الخلفية التي تغذي الشاشات بالبيانات، أو التطوير الشامل، فإن أي تطبيق ويب ناجح يُقاس في النهاية بجودة الشاشة التي يتعامل معها المستخدم.
- لطلاب الأمن السيبراني مستقبلاً: بما أن جميع ملفات الواجهة الأمامية تُحمَّل وتُنفَّذ مباشرة داخل متصفح المستخدم، فإن الواجهة الأمامية تمثل أول سطح مكشوف يتعامل معه الفاحص الأمني؛ فلا يمكن فهم كيفية فحص المدخلات أو اكتشاف تسريب البيانات في كود الصفحة أو حماية المتصفح من ثغرات حقن السكربتات () دون استيعاب آلية عمل الواجهة الأمامية أولاً.
ملخص الدرس
حصاد الدرسمراجعة مركّزة لأهم المفاهيم والقواعد الهندسية التي أتقنتها في هذا الدرس قبل التطبيق العملي
ماذا تعلّمت في هذا الدرس؟
تعرّفنا في هذا الدرس على مفهوم تطوير الواجهة الأمامية، ولماذا يُسمى بالتنفيذ من جهة العميل داخل المتصفح، وكيف يحوّل المتصفح الملفات إلى شاشة مرئية وتفاعلية، وما المهام اليومية لمطور الواجهة الأمامية، والفرق الجوهري بين الواجهة الأمامية والواجهة الخلفية والتطوير الشامل. الخطوة التالية: انتقل الآن إلى الدرس التالي اللغات الأساسية للواجهة الأمامية () لنتعرف بوضوح على الثلاثي الأساسي ( و و) ومفهوم شجرة ولغة !
سجّل الدخول لحفظ تقدمك
تابع إنجاز المواضيع والمصطلحات والمهام، وكمّل من آخر خطوة على أي جهاز.
المصطلحات8
راجع المعنى، اشرحه لنفسك، ثم علّم البطاقة كمفهومة.
- 01 Front-End Development تطوير الواجهة الأمامية
- فرع تطوير الويب المختص ببناء الجزء المرئي والتفاعلي من المواقع والتطبيقات الذي يعمل مباشرة داخل متصفح الزائر.
- للمراجعة
- 02 Client-Side Execution التنفيذ من جهة العميل
- تشغيل ملفات الواجهة الأمامية محلياً على جهاز المستخدم داخل متصفح الويب بدلاً من تشغيلها على الخادم البعيد.
- للمراجعة
- 03 User Interface (UI) واجهة المستخدم
- جميع العناصر البصرية المعروضة على الشاشة من أزرار وقوائم وألوان وخطوط ونماذج يتعامل معها المستخدم.
- للمراجعة
- 04 Front-End Developer مطور الواجهة الأمامية
- المختص البرمجي الذي يحوّل التصاميم البصرية الثابتة إلى صفحات ويب حية ومتجاوبة باستخدام لغات الواجهة الأمامية.
- للمراجعة
- 05 Back-End Development تطوير الواجهة الخلفية
- التطوير من جهة الخادم المسؤول عن إدارة قواعد البيانات والتحقق من الهوية والعمليات الحسابية الخفية خلف الكواليس.
- للمراجعة
- 06 Server-Side Execution التنفيذ من جهة الخادم
- معالجة الأوامر البرمجية واستعلامات قواعد البيانات داخل خادم الويب البعيد قبل إرسال النتيجة إلى المتصفح.
- للمراجعة
- 07 Full-Stack Developer مطور الواجهتين الشامل
- المطور الذي يجمع بين مهارات بناء الواجهة الأمامية في المتصفح وبناء الواجهة الخلفية وقواعد البيانات على الخادم.
- للمراجعة
- 08 Design Handoff تسليم التصميم للمطور
- المرحلة التي يسلم فيها مصمم الواجهة المخططات والألوان والمقاسات المعتمدة إلى مطور الواجهة الأمامية لتحويلها إلى كود.
- للمراجعة
لا توجد بطاقات تطابق البحث والتصفية.
اقرأ البطاقات بحرية. سجّل الدخول لحفظ تقدم مراجعتك.
الاختصارات5
راجع المعنى، اشرحه لنفسك، ثم علّم البطاقة كمفهومة.
- 01 UI واجهة المستخدم
- User Interface
- الواجهة البصرية التي تضم الأزرار والألوان والقوائم التي يراها المستخدم ويتفاعل معها.
- للمراجعة
- 02 UX تجربة المستخدم
- User Experience
- مدى سهولة وسلاسة ووضوح رحلة المستخدم أثناء إتمام مهامه داخل الموقع.
- للمراجعة
- 03 HTML لغة توصيف النص الفائق
- HyperText Markup Language
- اللغة الأساسية لبناء هيكل الصفحة وتحديد العناوين والفقرات والصور والروابط.
- للمراجعة
- 04 CSS أوراق الأنماط المتتالية
- Cascading Style Sheets
- لغة التنسيق المسؤولة عن الألوان والخطوط والمسافات وتجاوب الشاشة مع مختلف الأجهزة.
- للمراجعة
- 05 JS لغة جافاسكريبت
- JavaScript
- لغة البرمجة التي ينفذها المتصفح لإضافة التفاعل الحي والحركة والمنطق البرمجي للصفحة.
- للمراجعة
لا توجد بطاقات تطابق البحث والتصفية.
اقرأ البطاقات بحرية. سجّل الدخول لحفظ تقدم مراجعتك.
مهامك قبل الاختبار
خطوة صغيرة كل مرة. وإنجاز تقدر ترجع له.
-
افتح أي موقع تعليمي في متصفحك وحدد ثلاثة عناصر هيكلية (عناوين أو صور)، وثلاث خصائص مظهرية (ألوان أو خطوط)، وعنصرين تفاعليين (أزرار أو قوائم).
-
جرّب النقر على زر تبديل المظهر النهاري/الليلي في المنصة (تنفيذ لحظي في جهة العميل بالمتصفح) وقارنه بعملية تسجيل الدخول للحساب (التي تتطلب تحققاً في الواجهة الخلفية على الخادم).
-
تنقل بين المراحل الأربع في المحاكي التفاعلي داخل الموضوع الثالث لملاحظة كيف تتحول الملفات المستلمة إلى بطاقة مهيكلة ومنسقة وتفاعلية.
تأشير المهمة إقرار منك بإتمامها، وليس تصحيحًا آليًا للكود. يُحفظ تقدمك في حسابك.
اختبر فهمك.
ووصلها للإتقان.
كل سؤال خطوة لقدّام. اختار، اكتب كود، وشوف نتيجتك فورًا.
أكمل المهام، واجمع كل الإجابات الصحيحة. أقل من 100%؟ راجع وأعد المحاولة.
الأسئلة متاحة للاطلاع. سجّل الدخول للتفاعل وحفظ تقدمك.