كـ Frontend Developers، كتير مننا بيحس بملل 😩 وإحباط لما نيجي نكتب أكواد CSS، لأنها بتستهلك وقت كبير وبتبقى مملة أحيانًا.
كنت بدور من فترة على أدوات تسهل عملية كتابة الـ CSS وتوفر وقتي ⏳، لحد ما لقيت موقع CSS Portals، وفعلاً حسيت إنه الحل المثالي 🚀.
الموقع بيقدملك مكتبة ضخمة من الأدوات اللي بتساعدك في تصميم الـ CSS بسرعة وسهولة ✨. تقدر تعدل على أي تصميم أو ألوان عايزها 🎨، وفي ثواني تاخد الكود كوبي وتحطه في موقعك 🖥️.
ده رابط الموقع: https://www.cssportal.com/
لو فيه مواقع تانية بتستخدموها للغرض ده، شاركونا تجاربكم! 👇
كنت بدور من فترة على أدوات تسهل عملية كتابة الـ CSS وتوفر وقتي ⏳، لحد ما لقيت موقع CSS Portals، وفعلاً حسيت إنه الحل المثالي 🚀.
الموقع بيقدملك مكتبة ضخمة من الأدوات اللي بتساعدك في تصميم الـ CSS بسرعة وسهولة ✨. تقدر تعدل على أي تصميم أو ألوان عايزها 🎨، وفي ثواني تاخد الكود كوبي وتحطه في موقعك 🖥️.
ده رابط الموقع: https://www.cssportal.com/
لو فيه مواقع تانية بتستخدموها للغرض ده، شاركونا تجاربكم! 👇
نصيحة للمبرمجين:
- اتعلم SQL قبل ما تتعلم ORM.
- اتعلم GIT قبل ما تتعلم Jenkins.
- اتعلم SQL قبل ما تتعلم NoSQL.
- اتعلم CSS قبل ما تتعلم Tailwind.
- اتعلم Linux قبل ما تتعلم Docker.
- اتعلم Javascript قبل ما تتعلم React.
- اتعلم REST قبل ما تتعلم GraphQL.
- اتعلم HTML قبل ما تتعلم Javascript.
- اتعلم Containers قبل ما تتعلم Kubernetes.
- اتعلم Monolith قبل ما تتعلم Microservices.
- اتعلم Data Structure قبل ما تتعلم Leetcode.
- اتعلم الاساسيات قبل ما تتعلم framework.
- اتعلم SQL قبل ما تتعلم ORM.
- اتعلم GIT قبل ما تتعلم Jenkins.
- اتعلم SQL قبل ما تتعلم NoSQL.
- اتعلم CSS قبل ما تتعلم Tailwind.
- اتعلم Linux قبل ما تتعلم Docker.
- اتعلم Javascript قبل ما تتعلم React.
- اتعلم REST قبل ما تتعلم GraphQL.
- اتعلم HTML قبل ما تتعلم Javascript.
- اتعلم Containers قبل ما تتعلم Kubernetes.
- اتعلم Monolith قبل ما تتعلم Microservices.
- اتعلم Data Structure قبل ما تتعلم Leetcode.
- اتعلم الاساسيات قبل ما تتعلم framework.
إليك بعض النصائح الذهبية لتحسين أداء موقعك، تجربة المستخدم، وتحسين ظهوره في محركات البحث 🔥💻:
✨ الأداء (Performance):
1. استخدم أدوات ضغط الصور مثل TinyPNG و ImageOptim وحول الصور إلى صيغة WebP 🚀.
2. فعل “Lazy Loading” للصور عشان الموقع يحمل أسرع.
3. اضغط ملفات CSS و JavaScript لتسريع التحميل.
4. قلل من عدد الخطوط والأوزان المختلفة لتجنب التحميل البطيء.
🔑 إمكانية الوصول (Accessibility):
1. نظم هيكلة الصفحة باستخدام الوسوم زي <header>, <main>, <nav>.
2. تأكد من ترتيب العناوين H1 إلى H6 بشكل صحيح 📋.
3. استخدم نصوص بديلة (Alt Text) للصور عشان كل المستخدمين يستفيدوا، بما فيهم ذوي الاحتياجات الخاصة.
4. تحقق من تباين الألوان باستخدام WebAIM Contrast Checker 🎨.
5. استخدم ARIA Attributes لتحسين تجربة المستخدمين مع تقنيات المساعدة.
💡 أفضل الممارسات (Best Practices):
1. دايماً استخدم أحدث إصدارات المكتبات والحزم اللي بتشتغل بيها.
2. خلي تصميم موقعك متجاوب على الهواتف لضمان تجربة مثالية 📱.
🔍 تحسين محركات البحث (SEO):
1. تأكد إن كل صفحة فيها عنوان مناسب باستخدام وسم <title>.
2. استخدم Meta Descriptions لكل صفحة لزيادة فرص ظهورها في نتائج البحث.
3. استخدم العناوين (H1-H6) بترتيب هرمي لتعزيز فهرسة محركات البحث.
💡 أدوات هتساعدك تحلل وتطور موقعك:
1. Google Lighthouse.
2. WebPageTest.
3. WAVE Web Accessibility Tool.
حسّن موقعك اليوم وخلّي تجربته أسرع، أفضل، وأكثر وصولاً لجميع المستخدمين! 🚀
✨ الأداء (Performance):
1. استخدم أدوات ضغط الصور مثل TinyPNG و ImageOptim وحول الصور إلى صيغة WebP 🚀.
2. فعل “Lazy Loading” للصور عشان الموقع يحمل أسرع.
3. اضغط ملفات CSS و JavaScript لتسريع التحميل.
4. قلل من عدد الخطوط والأوزان المختلفة لتجنب التحميل البطيء.
🔑 إمكانية الوصول (Accessibility):
1. نظم هيكلة الصفحة باستخدام الوسوم زي <header>, <main>, <nav>.
2. تأكد من ترتيب العناوين H1 إلى H6 بشكل صحيح 📋.
3. استخدم نصوص بديلة (Alt Text) للصور عشان كل المستخدمين يستفيدوا، بما فيهم ذوي الاحتياجات الخاصة.
4. تحقق من تباين الألوان باستخدام WebAIM Contrast Checker 🎨.
5. استخدم ARIA Attributes لتحسين تجربة المستخدمين مع تقنيات المساعدة.
💡 أفضل الممارسات (Best Practices):
1. دايماً استخدم أحدث إصدارات المكتبات والحزم اللي بتشتغل بيها.
2. خلي تصميم موقعك متجاوب على الهواتف لضمان تجربة مثالية 📱.
🔍 تحسين محركات البحث (SEO):
1. تأكد إن كل صفحة فيها عنوان مناسب باستخدام وسم <title>.
2. استخدم Meta Descriptions لكل صفحة لزيادة فرص ظهورها في نتائج البحث.
3. استخدم العناوين (H1-H6) بترتيب هرمي لتعزيز فهرسة محركات البحث.
💡 أدوات هتساعدك تحلل وتطور موقعك:
1. Google Lighthouse.
2. WebPageTest.
3. WAVE Web Accessibility Tool.
حسّن موقعك اليوم وخلّي تجربته أسرع، أفضل، وأكثر وصولاً لجميع المستخدمين! 🚀
هل مستعد لنقل مهاراتك في الـ Front-End إلى مستوى جديد؟ Frontend Mentor هو مفتاحك لتحويل معرفتك النظرية إلى خبرة عملية حقيقية!
بعد ما تتعلم أساسيات الـ HTML، CSS، وJavaScript، حان الوقت لتبدأ العمل على مشاريع حقيقية تضيفها لمعرض أعمالك وتبهر بها أي شركة. وهنا بييجي دور Frontend Mentor، الموقع اللي هيحولك من مجرد متدرب إلى مطور محترف.
ليه Frontend Mentor هو وجهتك القادمة؟
🔥 مشاريع واقعية: مش مجرد تمارين نظرية، بل تحديات تحاكي المشاريع الحقيقية اللي هتشتغل عليها في وظيفتك القادمة. فرصتك لتطبيق كل اللي اتعلمته وبناء مواقع تبهر بها عملائك أو مسؤولي التوظيف.
🚀 مستويات تناسبك مهما كان مستواك: سواء لسه مبتدئ أو مطور عندك خبرة، هتلاقي مشاريع تناسب مستواك وتساعدك تتطور خطوة بخطوة.
🎯 معرض أعمال يلفت الأنظار: كل مشروع هتعمله على Frontend Mentor هيمثل إضافة قوية لملف أعمالك، وده المفتاح لجذب الانتباه في أي مقابلة أو تقديم على وظيفة.
💬 تعلم من الأفضل: استفيد من تعليقات مجتمع المطورين المحترفين اللي هيوجهوك ويصححوا أخطائك عشان تتطور بسرعة.
📱 إتقان التصميم المتجاوب: هتتعلم إزاي تبني مواقع تناسب كل الأجهزة والشاشات، وده من أهم المهارات المطلوبة حالياً.
🎓 تحضيرك لسوق العمل الحقيقي: مع كل تحدي هتكتسب خبرة عملية في التعامل مع مشاريع حقيقية، وهتكون جاهز لسوق العمل بسرعة!
هل جاهز تخطو أول خطوة نحو احتراف الـ Front-End؟ ابدأ دلوقتي مع Frontend Mentor وانطلق في بناء مشاريع تبهر بيها الجميع!
🔗 جربه وابدأ رحلتك: frontendmentor.io
بعد ما تتعلم أساسيات الـ HTML، CSS، وJavaScript، حان الوقت لتبدأ العمل على مشاريع حقيقية تضيفها لمعرض أعمالك وتبهر بها أي شركة. وهنا بييجي دور Frontend Mentor، الموقع اللي هيحولك من مجرد متدرب إلى مطور محترف.
ليه Frontend Mentor هو وجهتك القادمة؟
🔥 مشاريع واقعية: مش مجرد تمارين نظرية، بل تحديات تحاكي المشاريع الحقيقية اللي هتشتغل عليها في وظيفتك القادمة. فرصتك لتطبيق كل اللي اتعلمته وبناء مواقع تبهر بها عملائك أو مسؤولي التوظيف.
🚀 مستويات تناسبك مهما كان مستواك: سواء لسه مبتدئ أو مطور عندك خبرة، هتلاقي مشاريع تناسب مستواك وتساعدك تتطور خطوة بخطوة.
🎯 معرض أعمال يلفت الأنظار: كل مشروع هتعمله على Frontend Mentor هيمثل إضافة قوية لملف أعمالك، وده المفتاح لجذب الانتباه في أي مقابلة أو تقديم على وظيفة.
💬 تعلم من الأفضل: استفيد من تعليقات مجتمع المطورين المحترفين اللي هيوجهوك ويصححوا أخطائك عشان تتطور بسرعة.
📱 إتقان التصميم المتجاوب: هتتعلم إزاي تبني مواقع تناسب كل الأجهزة والشاشات، وده من أهم المهارات المطلوبة حالياً.
🎓 تحضيرك لسوق العمل الحقيقي: مع كل تحدي هتكتسب خبرة عملية في التعامل مع مشاريع حقيقية، وهتكون جاهز لسوق العمل بسرعة!
هل جاهز تخطو أول خطوة نحو احتراف الـ Front-End؟ ابدأ دلوقتي مع Frontend Mentor وانطلق في بناء مشاريع تبهر بيها الجميع!
🔗 جربه وابدأ رحلتك: frontendmentor.io
أهم سؤال في مقابلات الـ Front-End: إيه الفرق بين var، let، و const؟ 🧐
1. var:
الطريقة القديمة لتعريف المتغيرات في JavaScript، لكن احذر! 🛑 var ممكن يسببلك مشاكل لأنه بيسمح لك تعرّف نفس المتغير أكتر من مرة، وده بيعمل لخبطة كبيرة في المشاريع الضخمة.
2. let:
مع تحديث ES6، جه الحل! 🙌 let هو البديل الآمن اللي بيمنع إعادة تعريف المتغير مرتين. لو عندك متغير عايز تعدل قيمته أثناء الكود، let هو أفضل اختيارك. 👌
3. const:
محتاج متغير مش هيتغير؟ 💡 استخدم const! لما تكون عارف إن المتغير ثابت ومافيش حاجة هتعدله، const هي الأنسب وبتضمن لك الثبات في الكود بتاعك.
💡 ملحوظة سريعة:
حتى لو استخدمت const مع مصفوفة أو كائن، تقدر تعدل على العناصر اللي جواهم، بس مش هتقدر تغير الكائن أو المصفوفة نفسهم.
استخدامك للنوع الصحيح من المتغيرات مش بس بيحسن الكود بتاعك، ده بيخليه أكتر أمانًا ونظامًا! 🔒💻
1. var:
الطريقة القديمة لتعريف المتغيرات في JavaScript، لكن احذر! 🛑 var ممكن يسببلك مشاكل لأنه بيسمح لك تعرّف نفس المتغير أكتر من مرة، وده بيعمل لخبطة كبيرة في المشاريع الضخمة.
2. let:
مع تحديث ES6، جه الحل! 🙌 let هو البديل الآمن اللي بيمنع إعادة تعريف المتغير مرتين. لو عندك متغير عايز تعدل قيمته أثناء الكود، let هو أفضل اختيارك. 👌
3. const:
محتاج متغير مش هيتغير؟ 💡 استخدم const! لما تكون عارف إن المتغير ثابت ومافيش حاجة هتعدله، const هي الأنسب وبتضمن لك الثبات في الكود بتاعك.
💡 ملحوظة سريعة:
حتى لو استخدمت const مع مصفوفة أو كائن، تقدر تعدل على العناصر اللي جواهم، بس مش هتقدر تغير الكائن أو المصفوفة نفسهم.
استخدامك للنوع الصحيح من المتغيرات مش بس بيحسن الكود بتاعك، ده بيخليه أكتر أمانًا ونظامًا! 🔒💻
عزيزي المطوّر،
لو مش بتستخدم الإضافة دي، يبقى بجد فاتك كتير! الإضافة دي مش بس هتسهل عليك كتابة الكود، لكنها كمان هتغنيك عن طلب المساعدة في مراجعة الكود، خصوصًا لو لسه في بداية رحلتك في البرمجة.
الإضافة دي مدعومة بالذكاء الاصطناعي في Visual Studio Code وبتيجي مع مجموعة مميزات قوية، منها:
1. تنظيف الكود وتبسيطه.
2. ترتيب الكود بشكل منظم وقابل للقراءة.
3. إنشاء اختبارات وحدة (Unit Tests) تلقائيًا للكود.
4. تحسين أمان الكود، خصوصًا في بيانات المواقع وتطبيقات الـ Backend.
5. تقليل الأكواد غير الضرورية لرفع الأداء وتجنب الكود الزائد.
جرب الإضافة من هنا:
https://marketplace.visualstudio.com/items?itemName=Bito.Bito
لو مش بتستخدم الإضافة دي، يبقى بجد فاتك كتير! الإضافة دي مش بس هتسهل عليك كتابة الكود، لكنها كمان هتغنيك عن طلب المساعدة في مراجعة الكود، خصوصًا لو لسه في بداية رحلتك في البرمجة.
الإضافة دي مدعومة بالذكاء الاصطناعي في Visual Studio Code وبتيجي مع مجموعة مميزات قوية، منها:
1. تنظيف الكود وتبسيطه.
2. ترتيب الكود بشكل منظم وقابل للقراءة.
3. إنشاء اختبارات وحدة (Unit Tests) تلقائيًا للكود.
4. تحسين أمان الكود، خصوصًا في بيانات المواقع وتطبيقات الـ Backend.
5. تقليل الأكواد غير الضرورية لرفع الأداء وتجنب الكود الزائد.
جرب الإضافة من هنا:
https://marketplace.visualstudio.com/items?itemName=Bito.Bito
خارطة طريق مطور الويب الشامل:
المرحلة 1: تعلم HTML
المرحلة 2: إتقان CSS (بما في ذلك Flexbox وGrid) + بناء مشروع
المرحلة 3: تعلم Git و GitHub
المرحلة 4: تعلم JavaScript + إكمال مشروع
المرحلة 5: العمل مع APIs + بناء مشروع
المرحلة 6: استكشاف إطار عمل للواجهة الأمامية (React أو Vue أو Svelte) + بناء مشروع
المرحلة 7: تعلم Node.js + إنشاء مشروع
المرحلة 8: دراسة قواعد البيانات (MySQL أو MongoDB) + تطوير مشروع
المرحلة 1: تعلم HTML
المرحلة 2: إتقان CSS (بما في ذلك Flexbox وGrid) + بناء مشروع
المرحلة 3: تعلم Git و GitHub
المرحلة 4: تعلم JavaScript + إكمال مشروع
المرحلة 5: العمل مع APIs + بناء مشروع
المرحلة 6: استكشاف إطار عمل للواجهة الأمامية (React أو Vue أو Svelte) + بناء مشروع
المرحلة 7: تعلم Node.js + إنشاء مشروع
المرحلة 8: دراسة قواعد البيانات (MySQL أو MongoDB) + تطوير مشروع
خارطة طريق شاملة لتعلم قواعد البيانات:
المرحلة 1: فهم الأساسيات
ابدأ بفهم أساسيات قواعد البيانات: ما هي قاعدة البيانات، الجداول، الأعمدة، الصفوف، وكيفية التخزين والاسترجاع.
المرحلة 2: تعلم SQL
ابدأ مع لغة SQL، تعلم كيفية إنشاء الجداول، إجراء الاستعلامات، إدخال البيانات وتعديلها، وحذفها.
المرحلة 3: التعرف على نظم إدارة قواعد البيانات (DBMS)
تعلم عن أنظمة مثل MySQL و PostgreSQL و SQL Server، وكيفية تثبيتها وتشغيلها والعمل معها.
المرحلة 4: دراسة تصميم قواعد البيانات
استكشاف تصميم قاعدة البيانات، العلاقات بين الجداول (1-1، 1-متعدد، متعدد-متعدد)، وأهمية التطبيع (Normalization) لتجنب التكرار.
المرحلة 5: التعرف على قواعد البيانات غير العلائقية (NoSQL)
تعلم عن قواعد البيانات غير العلائقية مثل MongoDB، وكيفية التعامل مع البيانات غير الهيكلية.
المرحلة 6: استكشاف الاستعلامات المتقدمة وتحسين الأداء
التعمق في الاستعلامات المتقدمة مثل JOIN و Indexing، بالإضافة إلى تحسين أداء قاعدة البيانات لتحقيق استجابات أسرع.
المرحلة 7: العمل على مشروع حقيقي
قم ببناء مشروع كامل باستخدام قواعد البيانات، مثل نظام إدارة محتوى أو تطبيق تجارة إلكترونية. هذه المرحلة ستساعدك على تطبيق كل ما تعلمته.
المرحلة 8: التعرف على إدارة قواعد البيانات وأمنها
استكشاف مواضيع مثل النسخ الاحتياطي، استعادة البيانات، وإدارة الأذونات للحفاظ على أمان البيانات.
المرحلة 9: استكشاف أدوات التحليل والذكاء الاصطناعي (اختياري)
استكشاف أدوات تحليل البيانات وربط قواعد البيانات بأنظمة الذكاء الاصطناعي لتحليل البيانات بطرق أكثر تقدماً.
اتباع هذه الخطوات سيوفر لك قاعدة صلبة في مجال قواعد البيانات، ويجعلك جاهزاً لبناء تطبيقات قوية ومؤمّنة!
المرحلة 1: فهم الأساسيات
ابدأ بفهم أساسيات قواعد البيانات: ما هي قاعدة البيانات، الجداول، الأعمدة، الصفوف، وكيفية التخزين والاسترجاع.
المرحلة 2: تعلم SQL
ابدأ مع لغة SQL، تعلم كيفية إنشاء الجداول، إجراء الاستعلامات، إدخال البيانات وتعديلها، وحذفها.
المرحلة 3: التعرف على نظم إدارة قواعد البيانات (DBMS)
تعلم عن أنظمة مثل MySQL و PostgreSQL و SQL Server، وكيفية تثبيتها وتشغيلها والعمل معها.
المرحلة 4: دراسة تصميم قواعد البيانات
استكشاف تصميم قاعدة البيانات، العلاقات بين الجداول (1-1، 1-متعدد، متعدد-متعدد)، وأهمية التطبيع (Normalization) لتجنب التكرار.
المرحلة 5: التعرف على قواعد البيانات غير العلائقية (NoSQL)
تعلم عن قواعد البيانات غير العلائقية مثل MongoDB، وكيفية التعامل مع البيانات غير الهيكلية.
المرحلة 6: استكشاف الاستعلامات المتقدمة وتحسين الأداء
التعمق في الاستعلامات المتقدمة مثل JOIN و Indexing، بالإضافة إلى تحسين أداء قاعدة البيانات لتحقيق استجابات أسرع.
المرحلة 7: العمل على مشروع حقيقي
قم ببناء مشروع كامل باستخدام قواعد البيانات، مثل نظام إدارة محتوى أو تطبيق تجارة إلكترونية. هذه المرحلة ستساعدك على تطبيق كل ما تعلمته.
المرحلة 8: التعرف على إدارة قواعد البيانات وأمنها
استكشاف مواضيع مثل النسخ الاحتياطي، استعادة البيانات، وإدارة الأذونات للحفاظ على أمان البيانات.
المرحلة 9: استكشاف أدوات التحليل والذكاء الاصطناعي (اختياري)
استكشاف أدوات تحليل البيانات وربط قواعد البيانات بأنظمة الذكاء الاصطناعي لتحليل البيانات بطرق أكثر تقدماً.
اتباع هذه الخطوات سيوفر لك قاعدة صلبة في مجال قواعد البيانات، ويجعلك جاهزاً لبناء تطبيقات قوية ومؤمّنة!
خلينا النهاردة نتكلم عن كيفية حماية ملف .env في Laravel وأهمية الخطوة دي.
ملف .env بيحتوي على بيانات حساسة جداً، زي مفاتيح الـ API ومعلومات الاتصال بقاعدة البيانات، وعشان كده مش المفروض يتم رفعه مع الكود العام. حمايته بيسهل أمان البيانات وخصوصاً في فرق التطوير الكبيرة.
طيب، إزاي نعمل الحماية دي؟ ببساطة، عن طريق تشفير الملف. بنستخدم الأمر ده:
الأمر ده هيولد مفتاح ويعمل ملف اسمه env.encrypted مشفر تماماً. لما تيجي ترفع المشروع على GitHub مثلاً، مش هترفع ملف .env، لكن تقدر ترفع env.encrypted بأمان.
لو حد من الفريق محتاج يفتح الملف ويشوف البيانات، هيستخدم الأمر ده:
وبكده يتم فك التشفير وإنشاء ملف .env يحتوي على البيانات الأساسية.
حماية ملف .env خطوة مهمة لضمان أمان المشروع وتسهيل إدارة الأمان في بيئة العمل الجماعية.
ملف .env بيحتوي على بيانات حساسة جداً، زي مفاتيح الـ API ومعلومات الاتصال بقاعدة البيانات، وعشان كده مش المفروض يتم رفعه مع الكود العام. حمايته بيسهل أمان البيانات وخصوصاً في فرق التطوير الكبيرة.
طيب، إزاي نعمل الحماية دي؟ ببساطة، عن طريق تشفير الملف. بنستخدم الأمر ده:
php artisan env:encryptالأمر ده هيولد مفتاح ويعمل ملف اسمه env.encrypted مشفر تماماً. لما تيجي ترفع المشروع على GitHub مثلاً، مش هترفع ملف .env، لكن تقدر ترفع env.encrypted بأمان.
لو حد من الفريق محتاج يفتح الملف ويشوف البيانات، هيستخدم الأمر ده:
php artisan env:decrypt --key=your_keyوبكده يتم فك التشفير وإنشاء ملف .env يحتوي على البيانات الأساسية.
حماية ملف .env خطوة مهمة لضمان أمان المشروع وتسهيل إدارة الأمان في بيئة العمل الجماعية.
لو اتعلمت Tailwind بعد Bootstrap وبتعاني من مشكلة إنك بتعمل كل الـ Components بإيدك، الحل هيكون Flowbite!
الموقع ده: https://flowbite.com/docs/getting-started/introduction/
بيوفرلك Components جاهزة زي Bootstrap، وبيشتغل تقريباً مع كل الـ Frameworks. كل اللي عليك إنك تمشي على الـ Documentation، وهتحس كأنك بتستخدم Bootstrap تاني بالظبط.
الموقع ده: https://flowbite.com/docs/getting-started/introduction/
بيوفرلك Components جاهزة زي Bootstrap، وبيشتغل تقريباً مع كل الـ Frameworks. كل اللي عليك إنك تمشي على الـ Documentation، وهتحس كأنك بتستخدم Bootstrap تاني بالظبط.
نصيحة JavaScript! 🚀
في JavaScript، تختلف طريقتا reverse() و toReversed() عند التعامل مع المصفوفات بترتيب معكوس:
1. reverse()
🔄 تقوم بتعديل المصفوفة الأصلية عن طريق عكس عناصرها.
🔄 تعيد المصفوفة بعد عكسها، ولكن المصفوفة الأصلية تتغير بشكل دائم.
2. toReversed()
🔹 تعيد مصفوفة جديدة مع عناصر معكوسة دون تعديل المصفوفة الأصلية.
🔹 تكون مفيدة عندما تحتاج إلى نسخة معكوسة من المصفوفة، لكنك ترغب في الحفاظ على النسخة الأصلية بدون تغيير.
في JavaScript، تختلف طريقتا reverse() و toReversed() عند التعامل مع المصفوفات بترتيب معكوس:
1. reverse()
🔄 تقوم بتعديل المصفوفة الأصلية عن طريق عكس عناصرها.
🔄 تعيد المصفوفة بعد عكسها، ولكن المصفوفة الأصلية تتغير بشكل دائم.
2. toReversed()
🔹 تعيد مصفوفة جديدة مع عناصر معكوسة دون تعديل المصفوفة الأصلية.
🔹 تكون مفيدة عندما تحتاج إلى نسخة معكوسة من المصفوفة، لكنك ترغب في الحفاظ على النسخة الأصلية بدون تغيير.