رياكت
مصطلحات أساسية

قاموس لمجموعة مصطلحات إنجليزية تتعلق بمكتبة رياكت مع تعريفها:
| مصطلحات إنجليزية متعلقة بمكتبة ريأكت> المصطلح | مصطلحات إنجليزية متعلقة بمكتبة ريأكت> التّعريف | مصطلحات إنجليزية متعلقة بمكتبة ريأكت> ملاحظة |
| --- | --- | --- |
| DOM | هي اختصار (بالإنجليزية: Document Object Model)‏، وتعني نموذج كائن المستند، ويُقصد بها الهيكل الشجري الخاص بالعناصر في صفحة الويب. |  |
| UI Component | مُكون واجهة المستخدم (بالإنجليزية: UI Component)‏، وهو مُصطلح يُشاع استعماله أثناء مرحلة تصميم واجهة مستخدم رسومية حيث تُقسم الصفحة إلى أقسام وعناصر أساسية ومن ثم تصميمها، بدلًا من التعامل مع الصفحة كقالب واحد كامل بحد ذاته. | مثال: الشريط الجانبي في ويكيبيديا يُعد مُكونًا منفصلًا يعاد استخدامه في العديد من الصفحات. |
| React Component | مُكون رياكت (بالإنجليزية: React Component)‏، مُصطلح يُقصد به عنصر واجهة مستخدم بُني باستخدام مكتبة رياكت، وهي الطريقة المستخدمة لفصل كل مكون عن المكون الأخر في رياكت، وهذا المفهوم في علوم الحاسب يطلق عليه فصل الاهتمامات. | تُركز رياكت في مفهوم فصل العناصر في الصفحة إلى المُكونات. |
| JSX | اختصار JavaScript Syntax Extension، وهي طريقة للتعبير عن عناصر HTML داخل جافا سكريبت، وتُترجم في ريأكت إلى الوظيفة createElement(). | JSX ابتُكرت من أجل تسهيل برمجة واجهات المستخدم عبر لغة جافاسكربت. |
| Single Page | تطبيق الصفحة الواحدة، هي إحدى طرق برمجة وتصميم صفحات الويب، وغالبًا ما تعتمد تطبيقات الصفحة الواحدة على مفهوم توليد الصفحة من جهة العميل (بالإنجليزية: Client Side Rendering)‏. | تُستخدم رياكت عادةً في هذا النوع من المواقع. |
| Routing | التوجيّه (بالإنجليزية: Routing)‏، هو مفهوم في الويب يُقصد به التنقل بين صفحة الويب الموجودة في الموقع نفسه، وبما أن تركيز رياكت هو إنشاء موقع بمفهوم الصفحة الواحدة يجب استخدام حلول من أجل التنقل بين الصفحات، فمكتبة رياكت لا تًقدم حلًا مباشرًا، وغالبًا ما تتم هذه العملية بمساعدة مكتبات طرف ثالث مثل ReactRouter أو بإنشاء حلول خاصة. |  |
| Client Side | جهة العميل، أي العمليات التي تجري على المتصفح من خلال جافاسكربت. | تعمل رياكت بشكل أساسي في جهة العميل. |
| Server Side | جهة الخادم، العمليات التي تجري في جهة الخادم (سيرفر الويب). |  |
| Client Side Rendering | التصيير من جهة العميل، يُقصد أن الصفحة يتم توليدها في جهة العميل. حيث يقوم المتصفح بتنزيل صفحة فارغة مع ملف جافاسكربت يحوي على الموقع، ويتم توليد الصفحة بالكامل من خلال جافاسكربت على المتصفح. | بشكل أساسي رياكت تقوم بتوليد الصفحة من جهة المستخدم. |
| Server Side Rendering | التصيير من جهة الخادم، يقصد به توليد الصفحة من جهة الخادوم (سيرفر الويب). حيث تُرسل صفحة HTML كاملة البيانات إلى العميل. | يُستخدم هذا المفهوم لتحسين الظهور في محركات البحث، ومن أجل تسريع عرض الصفحة للمستخدم. لتوليد الصفحات في جهة الخادم، يتم استخدام أُطر عمل أو مكتبات مساعدة مثل NextJS، أو إنشاء حلول خاصة. |
| Two Way Data Binding | ربط البيانات في كلا الإتجاهين، هو مفهوم في تصميم واجهات المستخدم يهدف لربط المكون الذي يظهر في واجهة المستخدم مع البيانات الموجودة في الكود البرمجي، بحيث لو تغيرت القيمة في الكود أو تلك المعروضة في واجهة المستخدم تتغير القيم في كليهما. | غالبًا ما يستخدم هذا النمط البرمجي على صفحات الويب، ولكن جاءت رياكت بمفهوم مُختلف. |
| Virtual DOM | نموذج كائن المستند الظاهري هو مفهوم برمجي وخوارزمية تستخدمها مكتبة رياكت من أجل تتبع التغيرات التي تطرأ في الحالة (State)، لعمل التغيرات اللازمة على مكونات الصفحة، ومن ثم تطبيق التغيرات على نموذج كائن المستند (DOM) الفعلي في الصفحة. | تُعد رياكت من أوائل المكتبات التي استخدمت هذا المفهوم، وقد أُستحدث هذا المفهوم لزيادة أداء وفاعلية مكتبة رياكت كونها تعتمد على مفهوم إعادة التصيير (بالإنجليزية: Re-Rendering)‏. |
| Props أو Prop | خصائص/ خاصية، يُستخدم هذا المصطلح للإشارة إلى البيانات التي تُنقل من مكون إلى آخر، وهي الطريقة التي تتبعها مكتبة رياكت في التعامل مع البيانات المتبادلة بين مُكون رياكت ومُكون رياكت آخر. |  |
| PascalCase | باسكال كيس طريقة مُتبعة في التسمية، حيث يجب أن تبدأ كل كلمة بحرف لاتيني كبير وتليها الكلمة الاخرى أيضًا بحرف لاتيني كبير بدون مسافات، وهي الطريقة التي تُتبع عادةً أثناء تسمية مُكونات رياكت. | مثال UserCard، أو Navbar يعد اسمًا صالحًا لمُكون رياكت. |