جاري التحميل...
جاري التحميل...
ما هو React ولماذا يُستخدم؟
React هو أحد أكثر مكتبات JavaScript شعبية لبناء واجهات المستخدم. تم إنشاؤه من قبل Facebook (الآن Meta) في عام 2013، وأصبح الأساس لملايين تطبيقات الويب في جميع أنحاء العالم.
💡 تشبيه بسيط:
تخيّل أنك تبني منزل من Lego. كل قطعة Lego هي مكون صغير (مثل الزر أو العنوان أو القائمة). يمكنك دمج هذه القطع معاً لإنشاء بناء معقد. React يعمل بنفس الطريقة: تبني واجهة المستخدم من المكونات الصغيرة القابلة لإعادة الاستخدام.
في هذا الدرس، سنتعلم ما هو React، ولماذا يُستخدم، وكيف تُنشئ مشروع React أساسي.
تخيّل أنك تريد بناء صفحة ويب بها: عنوان، قائمة منتجات، زر تسجيل دخول، ونموذج اتصال. بدون React، ستكتب كل هذا في ملف HTML واحد ضخم — صعب القراءة والصيانة.
React يحل هذه المشكلة بتقسيم الواجهة إلى مكونات صغيرة. كل مكون مسؤول عن جزء واحد من الواجهة:
💡 تشبيه بسيط:
فكّر في المكونات مثل الجداول والأثاث في غرفة. كل قطعة أثاث لها وظيفة محددة: الطاولة للأكل، الكرسي للجلوس، الخزانة للتخزين. يمكنك نقل أي قطعة إلى غرفة أخرى. المكونات في React كذلك — قطع قابلة لإعادة الاستخدام يمكنك نقلها بين الصفحات.
React له 4 خصائص أساسية تجعله مميزاً:
💡 تشبيه DOM الافتراضي:
تخيّل أنك تكتب مسودة قبل النسخ النهائي. بدلاً من تعديل الكتاب الأصلي مباشرة (بطيء ومحفوف بالمخاطر)، تكتب مسودة أولاً، ثم تقارنها مع النسخة الأصلية، ثم تنقّل فقط التغييرات. React يفعل الشيء نفسه: يُنشئ مسودة في الذاكرة (DOM الافتراضي)، يقارنها مع DOM الحقيقي، ثم يحدث فقط الأجزاء المتغيرة. هذا يجعله أسرع بكثير.
أسهل طريقة لبدء مشروع React هي استخدام Vite — أداة حديثة وسريعة جداً لإنشاء مشاريع JavaScript.
الخطوات:
npm create vite@latest my-app -- --template reactcd my-appnpm installnpm run dev💡 ملاحظة مهمة:
Vite (يُنطق "فايت") أسرع بكثير من الأدوات القديمة مثل Create React App. يبدأ خادم التطوير في ثوانٍ معدودة بدلاً من دقائق. جميع مشاريع React الحديثة تستخدم Vite.
JSX هو امتداد صيغة لـ JavaScript يبدو مشابهاً لـ HTML. يجعل كتابة مكونات React أكثر سهولة ووضوحاً.
بدون JSX، ستكتب React هكذا:
مع JSX، تكتب هكذا — أسهل وأوضح بكثير:
💡 تشبيه بسيط:
JSX مثل كتابة رسالة بريد إلكتروني. يمكنك كتابة النص العادي (JavaScript)، لكنك تستخدم تنسيقاً خاصاً مثل <strong> للنص العريض و <a> للروابط. JSX يسمح لك بكتابة عناصر HTML داخل كود JavaScript.
💡 ملاحظة:
JSX ليس HTML! هناك بعض الفروقات: تستخدم className بدلاً من class، و htmlFor بدلاً من for، وتكتب السلوكيات مثل onClick بدل onclick.
في React، كل شيء مكون. المكون هو جزء قابل لإعادة الاستخدام من واجهة المستخدم.
الأنواع الأساسية للمكونات:
💡 تشبيه بسيط:
المكون مثل دالة حاسبة. أنت تعطيها مدخلات (الخصائص/props)، وهي تُخرج نتيجة (واجهة المستخدم). المكون لا يُغيّر مدخلاته — فقط يعرضها بشكل جميل.
عندما تكتب كود React، يحدث ما يلي خلف الكواليس:
💡 هل تعلم؟:
يمكنك رؤية DOM الافتراضي بنفسك! اضغط F12 في المتصفح وانتقل إلى تبويب Components (في React Developer Tools). سترى شجرة المكونات وكيف يحدّث React كل مكون.
هناك أخطاء يقع فيها المبتدئون كثيراً:
اتبع هذه الممارسات لكتابة كود React نظيف وسهل الصيانة:
كيف يقارن React بالإطارات الأخرى الشائعة؟
مرونة React ونظامه البيئي يجعلانه خياراً رائعاً لمعظم المشاريع.
ما هو React؟
ما الفرق بين JSX والـ HTML؟
لماذا نستخدم DOM الافتراضي في React؟
أنشئ مكون React بسيط يعرض رسالة ترحيب وزر. عند النقر على الزر، يعرض تنبيهاً بالاسم.
الحل:
function MyProfile() {
return (
<div>
<h1>أحمد محمد</h1>
<p>عمري: 25 سنة</p>
<p className="highlight">مطور مبتدئ في تعلم React</p>
</div>
);
}المفاهيم الأساسية:
خطوات الإعداد بـ Vite:
ما الفرق بين React ومكتبة JavaScript أخرى؟
الإجابة:
React يوفر DOM افتراضي لأداء أفضل، ونظام بيئي كبير، ومجتمع ضخم. كما أنه يدعم Server Components في Next.js.
ماذا يحدث عندما تستدعي setState؟
الإجابة:
يجدول React تحديث الحالة ويعيد عرض المكون في دورة تحديث واحدة.
لماذا نستخدم JSX بدلاً من HTML العادي؟
الإجابة:
JSX يجعل الكود أكثر وضوحاً ويسهل قراءته، ويحوله Babel إلى استدعاءات دوال JavaScript.
استخدم React Developer Tools
اضغط F12 وانتقل إلى تبويب Components لفحص شجرة المكونات
ابدأ بـ Vite دائماً
Vite أسرع بكثير من Create React App وبدأ يُستخدم في جميع المشاريع الحديثة