Arabic flag
Arabic
Select a Language
Arabic flag
Arabic
English flag
English
$
USD
Select a Currency
United States Dollar
$
Egypt Pound
ج.م.
Saudi Arabia Riyal
ر.س.
United Arab Emirates dirham
د.إ.
Oman Rial
.ر.ع
0
دورة JavaScript – المستوى الرابع

دورة JavaScript – المستوى الرابع

تعلَّم التعامل مع API، وتنظيم الكود باستخدام ES6 و OOP، وبناء تطبيقات أكثر واقعية.
0 طلاب
11 Lectures

ماذا ستتعلم؟

فهم كيفية جلب البيانات من API خارجي ودمجها داخل صفحات الويب
التعامل مع XMLHttpRequest ومتابعة حالة الطلب والتأكد من نجاحه
استخدام Fetch و Async/Await لتنفيذ العمليات غير المتزامنة بشكل منظم
فهم الفرق بين التنفيذ المتزامن وغير المتزامن والتحكم في ترتيب تنفيذ الكود
التعامل مع البيانات بصيغة JSON وتحويلها لكائنات داخل JavaScript
استخدام ميزات ES6 مثل let و const وTemplate Literals
كتابة الدوال السهمية (Arrow Functions) وتبسيط الكود
فهم الكلمة this وتحديد السياق الخاص بها داخل الكود
تطبيق مفاهيم البرمجة الكائنية (OOP) باستخدام Constructor وClass
إنشاء كائنات منظمة وربط البيانات بالوظائف باستخدام this وnew
التحكم في زمن تنفيذ الأكواد باستخدام setTimeout وsetInterval

About This Course

إذا كنت قد أنهيت أساسيات JavaScript لكنك لا تزال غير قادر على ربط ما تعلمته بتطبيقات حقيقية تتعامل مع بيانات خارجية وتعمل بشكل احترافي، فهذه هي الفجوة التي تستهدفها هذه الدورة.

هذه الدورة المتقدمة في JavaScript تركّز على تطبيق مفاهيم ES6 وOOP والتعامل مع API لبناء تطبيقات تفاعلية ببيانات حقيقية وتنفيذ غير متزامن بكفاءة.

تأتيك هذه الدورة كالمستوى الرابع ضمن مسار تعلّم JavaScript، وتتكوّن من 11 حلقة تركّز بشكل مباشر على نقل معرفتك من مرحلة الأساسيات إلى مرحلة التنفيذ العملي. ستتعرف خلالها على كيفية جلب البيانات من مصادر خارجية، والتحكم في توقيت تنفيذ الأكواد، واستخدام الأدوات الحديثة في ES6 مثل Arrow Functions وTemplate Literals، بالإضافة إلى فهم عميق لمفهوم this، والتعامل مع البرمجة الكائنية باستخدام Constructor وClass.

كما تنتقل معك الدورة إلى المستوى الأهم في التطبيقات الحديثة، وهو التعامل مع العمليات غير المتزامنة باستخدام Fetch وAsync/Await، مما يمكّنك من بناء واجهات تتفاعل مع البيانات بشكل حي دون التأثير على تجربة المستخدم.

هذه الدورة مناسبة لك تحديدًا إذا كنت قد أنهيت الأساسيات (المتغيرات، الشروط، الحلقات، الدوال، وDOM) وتريد الانتقال إلى بناء تطبيقات حقيقية تعتمد على API وتنظيم الكود بشكل احترافي. وهي غير مناسبة للمبتدئين تمامًا، بل لمن لديهم أساس واضح ويريدون الدخول إلى المرحلة التي تسبق تعلم React أو أي إطار عمل حديث.

المتطلبات

فهم أساسيات JavaScript بشكل واضح (المتغيرات، الشروط، الحلقات، الدوال)
القدرة على التعامل مع DOM وتنفيذ تغييرات على عناصر الصفحة
معرفة كيفية ربط JavaScript بملفات HTML بشكل صحيح
استيعاب أساسيات المصفوفات (Arrays) والكائنات (Objects)
فهم مبدئي لكيفية عمل المتصفح وتنفيذ الكود داخله
يفضّل أن يكون لديك تجربة سابقة في حل تمارين برمجية بسيطة (Logic Tasks)
المتطلبات

التعليمات

Check the frequently asked questions about this course.

هل هذه الدورة مناسبة لي إذا كنت ما زلت في بداية تعلم JavaScript؟
لا، هذه الدورة ليست موجهة للمبتدئين. ستستفيد منها فقط إذا كنت تمتلك أساسًا جيدًا في JavaScript، مثل فهم المتغيرات، الشروط، الحلقات، الدوال، والتعامل مع DOM، لأن المحتوى ينتقل مباشرة إلى مفاهيم متقدمة وتطبيقات عملية.
ما الفرق بين هذه الدورة والمحتويات المجانية المنتشرة عن JavaScript؟
الفرق هنا أنك لا تتعامل مع مفاهيم متفرقة، بل مع مسار متكامل يربط بين جلب البيانات من API، والتنفيذ غير المتزامن، وتنظيم الكود باستخدام ES6 وOOP، بحيث تفهم كيف تتحول الأجزاء إلى تطبيق حقيقي يعمل بكفاءة.
هل سأتعلم فعلاً كيفية التعامل مع API أم مجرد شرح نظري؟
ستتعلم ذلك بشكل عملي، بدءًا من استخدام XMLHttpRequest، ثم الانتقال إلى Fetch وAsync/Await، مع تطبيقات توضح كيفية جلب البيانات، التعامل معها، وعرضها داخل الصفحة بشكل متغير.
ما الذي سأفهمه تحديدًا عن البرمجة غير المتزامنة؟
ستفهم لماذا لا يتم تنفيذ الكود بالترتيب دائمًا، وكيف تتعامل مع هذه المشكلة باستخدام أدوات حديثة تتيح لك التحكم في توقيت التنفيذ دون تعطيل تجربة المستخدم.
هل تغطي الدورة مفاهيم ES6؟
التغطية هنا مرتبطة بالاستخدام الفعلي داخل الكود، مثل let وconst وTemplate Literals وArrow Functions، بحيث ترى فائدتها أثناء بناء تطبيقات وليس كتعريفات نظرية فقط.
هل سأفهم البرمجة الكائنية بشكل يمكنني استخدامه في مشاريع حقيقية؟
نعم، ستتعلم الفرق بين الكائنات العادية والقوالب (Class)، وكيف تنشئ كائنات جديدة باستخدام Constructor وnew، وتربط البيانات بالوظائف بشكل منظم يمكن استخدامه في مشاريع فعلية.
هل ستساعدني هذه الدورة في الانتقال إلى React أو أي إطار عمل حديث؟
نعم، لأنها تركز على المفاهيم التي تعتمد عليها هذه الأطر، مثل التعامل مع البيانات الخارجية، والتنفيذ غير المتزامن، وتنظيم الكود، وهي متطلبات أساسية قبل الدخول في React.
هل سأتعلم كيف أتعامل مع الأخطاء الشائعة أثناء جلب البيانات؟
نعم، ستتعرف على مشاكل مثل تنفيذ الكود قبل وصول البيانات، وكيفية التأكد من اكتمال الطلب بنجاح قبل التعامل معه، وهي من أكثر النقاط التي تسبب مشاكل للمبتدئين في هذه المرحلة.
هل تتضمن الدورة تطبيقات عملية أم مجرد شرح؟
الدورة تعتمد على التطبيق العملي، مثل جلب بيانات حقيقية من API وعرضها داخل الصفحة، والتعامل مع صور وبيانات مباشرة من السيرفر، وليس مجرد شرح نظري.
هل سأتعلم كيفية التحكم في توقيت تنفيذ الكود؟
نعم، ستتعلم استخدام أدوات مثل setTimeout وsetInterval لتنفيذ الأكواد في توقيتات محددة أو بشكل متكرر، وهو جزء مهم في بناء عناصر تفاعلية داخل التطبيقات.

المتطلبات الأساسية

We recommend completing the prerequisites for more effective learning.

إسماعيل مسعد
إسماعيل مسعد
6 الدورات
0 طلاب
تكمن ﺧﺒﺮﺗﻲ ﻓﻲ ﺻﻴﺎﻏﺔ واﺟﻬﺎت ﻣﺴﺘﺨﺪم دﻳﻨﺎﻣﻴﻜﻴﺔ وﻣﺘﺠﺎوﺑﺔ ﺑﺎﺳﺘﺨﺪام أﻧﺎ ﺑﺎرع ﻓﻲ اﻟﺘﻌﺎﻣﻞ ﻣﻊ ﻣﻬﺎم ﺗﻄﻮﻳﺮ اﻟﻮﻳﺐ ﻣﻦ اﻟﻨﻬﺎﻳﺔ إﱃ اﻟﻨﻬﺎﻳﺔ، ﻣﻀﻤﻨﺎ اﻟﺘﻮاﺻﻞ اﻟﺴﻠﺲ ﺑﻴﻦ ﻣﻜﻮﻧﺎت اﻟﻮاﺟﻬﺔ اﻷﻣﺎﻣﻴﺔواﻟﺨﻠﻔﻴﺔ ﻟﺘﻘﺪﻳﻢ ﺗﻄﺒﻴﻘﺎت وﻳﺐ ﻓﻌﺎﻟﺔ وﺳﻬﻠﺔ اﻻﺳﺘﺨﺪام
إسماعيل مسعد
Curriculum Overview

This course includes 1 modules, 11 lessons, and 0 hours of materials.

كورس جافا سكريبت (المستوى الرابع)
11 أقسام
1. بداية المستوى الرابع – مراجعة وتمهيد

في هذه الحلقة، أراجع معك أهم ما درسته في المراحل السابقة، من أساسيات JavaScript وربطها بـ HTML، إلى التعامل مع البيانات، والمصفوفات، والكائنات، والتحكم في عناصر الصفحة باستخدام DOM، حتى تتأكد أنك مستعد للانتقال بدون فجوات.



بعد ذلك، أهيّئك للدخول في المستوى الرابع، وأوضح لك المحاور الأساسية التي سنبني عليها المرحلة القادمة، لتبدأ في تحويل كل ما تعلمته إلى تطبيقات عملية أكثر احترافية.

مقدار -
2. فهم الـ API والبرمجة غير المتزامنة في JavaScript

في هذه الحلقة، أشرح لك مفهوم الـ API من خلال مثال عملي، وكيف تعتمد التطبيقات المختلفة على مصدر بيانات واحد مشترك، ولماذا يُستخدم كوسيط بين الـ Frontend والـ Backend، مع توضيح شكل البيانات (JSON) ودور كل طرف في دورة حياة المشروع.



بعد ذلك، أعرّفك بأنواع الطلبات الأساسية مثل GET وPOST وDELETE وPUT/PATCH، وكيف يمكن استخدام بيانات تجريبية أثناء التطوير، ثم أشرح لك الفرق بين الكود المتزامن وغير المتزامن، وكيف يتم تنفيذ العمليات دون تعطيل واجهة المستخدم.

مقدار -
3. جلب البيانات من API وعرضها داخل الصفحة

في هذه الحلقة، أبدأ معك التطبيق العملي لاستدعاء البيانات من API خارجي باستخدام XMLHttpRequest، وأشرح لك خطوات إنشاء الطلب بالكامل، من تهيئته وإرساله، إلى متابعة حالته والتأكد من نجاحه.



بعد ذلك، أوضح لك كيف تتعامل مع البيانات بعد وصولها، وتحولها من نص إلى كائن يمكنك استخدامه، ثم نعرضها داخل الصفحة بشكل ديناميكي باستخدام الحلقات وحقن المحتوى في HTML. وألفت انتباهك لخطأ شائع في التعامل مع العمليات غير المتزامنة، وكيف تضمن تنفيذ الكود في التوقيت الصحيح بعد اكتمال وصول البيانات.

مقدار -
4. الفرق بين var و let و const في جافا سكريبت

في هذه الحلقة، أشرح لك فكرة إصدارات جافا سكريبت، ولماذا جاء ES6 كنقطة تحول في طريقة كتابة الكود، ثم أركز معك على مشكلات var من حيث استهلاك الذاكرة وعدم احترامها لنطاق الكود، وما قد يسببه ذلك من أخطاء.



بعد ذلك، أعرّفك بالبدائل الحديثة let و const، وكيف تساعدك على كتابة كود أكثر تنظيمًا وأمانًا، مع توضيح الفرق بين المتغيرات والثوابت. وفي النهاية، أوضح لك أهمية استخدام "use strict" لفرض قواعد أكثر صرامة وتجنب الأخطاء الشائعة.

مقدار -
5. التعامل مع النصوص باستخدام Template Literals

في هذه الحلقة، أشرح لك واحدة من أهم إضافات ES6 في التعامل مع النصوص، وهي Template Literals، وأوضح لك المشكلة التي تواجهك عند استخدام علامات التنصيص التقليدية، خاصة عند كتابة النصوص على أكثر من سطر.



بعد ذلك، أعرّفك بطريقة استخدام Backticks، وكيف تتيح لك كتابة نصوص متعددة الأسطر بدون أخطاء، بالإضافة إلى دمج المتغيرات داخل النص بسهولة باستخدام ${} بدلًا من الطريقة التقليدية المعتمدة على علامة الجمع.

مقدار -
6. الدوال السهمية (Arrow Functions)

في هذه الحلقة، أشرح لك مفهوم الدوال السهمية، وأوضح الفرق بينها وبين الدوال التقليدية من حيث طريقة الكتابة، مع تحويل الدالة من الشكل القديم باستخدام function إلى الشكل الحديث باستخدام =>.



بعد ذلك، أعرّفك بالقواعد الأساسية لكتابة الدوال السهمية، مثل تبسيطها في حالة وجود بارامتر واحد، أو عند كتابة الدالة في سطر واحد، ومتى تحتاج لاستخدام الأقواس عند تعدد البارامترات. وفي النهاية، أوضح لك متى نستخدم هذا النمط الجديد أثناء كتابة الكود في الدروس القادمة.

مقدار -
7. فهم الكلمة المحجوزة (this) وسياق تنفيذها

في هذه الحلقة، أشرح لك مفهوم الكلمة this، وأنها ليست قيمة ثابتة بل تتغير حسب مكان استخدامها داخل الكود، لتشير دائمًا إلى السياق الذي يتم فيه التنفيذ.



أوضح لك كيف تتصرف this في النطاق العام، وماذا تشير إليه عند استخدامها داخل دالة عادية، ثم ننتقل لرؤية الفرق عند استخدامها داخل كائن، وكيف تبدأ في الإشارة إلى هذا الكائن نفسه بدلًا من النافذة العامة. وفي النهاية، أضع لك القاعدة الأساسية لفهم this قبل الانتقال لمفاهيم أكثر تقدّمًا.

مقدار -
8. استخدام Fetch و Async/Await لجلب البيانات

في هذه الحلقة، أطبق معك مثالًا عمليًا جديدًا لجلب البيانات من API مختلف، ونتعامل مع صور حقيقية قادمة من السيرفر، مع توضيح مشكلة ترتيب تنفيذ الكود بين العمليات المتزامنة وغير المتزامنة.



بعد ذلك، أعرّفك بالطريقة الحديثة باستخدام Fetch مع Async و Await، وكيف تُمكّنك من التحكم في توقيت تنفيذ الكود وانتظار البيانات قبل إكمال باقي الخطوات، بدلًا من التعقيد الموجود في XMLHttpRequest.

مقدار -
9. مقدمة في البرمجة الكائنية (OOP) في JavaScript

في هذه الحلقة، أشرح لك مفهوم البرمجة الكائنية (OOP)، وكيف تقوم على تمثيل العناصر ككائنات لها صفات، مع توضيح أنها منهجية لتنظيم الكود وليست لغة مستقلة، والهدف منها تسهيل بناء مشاريع كبيرة وقابلة لإعادة الاستخدام.



بعد ذلك، أوضح لك الفرق بين الكائن العادي والـ Class، وكيف نستخدم القالب البرمجي لإنشاء أكثر من كائن، ثم نطبق ذلك عمليًا باستخدام Constructor، مع شرح دور this في ربط البيانات، وكيفية إنشاء نسخ جديدة باستخدام new، بالإضافة إلى فكرة القيم الافتراضية داخل القالب.

مقدار -
10. استخدام Class و Constructor

في هذه الحلقة، أشرح لك استخدام class في البرمجة الكائنية، وكيف يمثل قالبًا منظمًا يجمع الخصائص والوظائف داخل كائن واحد بشكل أوضح من الطرق التقليدية.



بعد ذلك، أعرّفك بدالة constructor، وكيف تعمل تلقائيًا عند إنشاء كائن جديد باستخدام new، ودورها في تهيئة البيانات وربطها بالكائن باستخدام this، مع تطبيق عملي يوضح ترتيب تنفيذ الكود عند إنشاء الكائن.

مقدار -
11. التحكم في الوقت باستخدام setTimeout و setInterval

في هذه الحلقة، أشرح لك كيفية التحكم في زمن تنفيذ الأكواد داخل JavaScript، من خلال الدالتين setTimeout و setInterval، وتتعرف على الفرق بين تنفيذ الكود مرة واحدة بعد مدة محددة، وتنفيذه بشكل متكرر على فترات زمنية.



أوضح لك أيضًا أن التعامل مع الوقت يكون بالمللي ثانية، وكيف تستخدم هذه الأدوات لبناء عناصر تفاعلية تعتمد على الزمن. وفي نهاية الكورس، أوجّهك لما تحتاج التركيز عليه في المرحلة القادمة قبل الانتقال إلى React.

مقدار -
الشهادات
1 أقسام
شهادة الدورة
شهادة الدورة
If you pass all the lessons in this course, you will receive this certificate.
النوع شهادة الدورة
Reply to Comment
Comments Approval

Your comment will be visible after admin approval.

0
0 المراجعات
جودة المحتوى (0)
مهارات المدرب (0)
قيمة الشراء (0)
جودة الدعم (0)
Reply to Review
Submit Reply

Your reply to this review will be visible to all users.

دورة JavaScript – المستوى الرابع
25 $

تشمل هذه الدورة

شهادة رسمية
دعم المدرب
مفضلة
شارك

مواصفات الدورة

Lessons
11
مدة
1:27 ساعات
Access Duration
365 أيام
Updated Date
22/04/2026

إرسال الدورة كهدية

Send as a gift to friends
دورة JavaScript – المستوى الرابع
You are viewing
دورة JavaScript – المستوى الرابع