اذهب إلى المحتوى

محمد Fahmy

الأعضاء
  • المساهمات

    986
  • تاريخ الانضمام

  • تاريخ آخر زيارة

  • عدد الأيام التي تصدر بها

    5

كل منشورات العضو محمد Fahmy

  1. إذا كان ملف .env موجودًا في مستودع GitHub الخاص بمدير المشروع ولكنه تم وضعه في .gitignore ، فلا يمكنك استعادته بشكل مباشر من GitHub. ومع ذلك ، يمكنك محاولة العثور على نسخة محلية من ملف .env على جهاز الكمبيوتر الخاص بك أو الاتصال بمدير المشروع للحصول على نسخة من الملف. إذا كنت لا تزال تواجه مشكلة في الوصول إلى ملف .env ، فيمكنك محاولة إنشاء نسخة جديدة من الملف وتعيين جميع المتغيرات اللازمة. يجب أن يحتوي ملف .env على معلومات الاتصال بقاعدة البيانات وأيضًا المعلومات اللازمة للتحقق من الهوية لأي خدمات أخرى التي يمكن أن يستخدمها التطبيق. ومن الأفضل أن تحتفظ بنسخة محلية من ملف .env على جهاز الكمبيوتر الخاص بك وتأكد من عدم إضافته إلى مستودع GitHub الخاص بك في المستقبل.
  2. لديك مشكلة في استعدعاء المكون About في ملف App.js. سوف أشرح لك خطوات عمل المشروع من البداية حتي أستدعاء المكون About. لإنشاء مشروع React جديد، يمكن اتباع الخطوات التالية: 1. استخدام create-react-app لإنشاء مشروع React: npx create-react-app my-app cd my-app npm start 2. بعد تشغيل المشروع بنجاح ، يمكن إنشاء مكون جديد باستخدام React كـ About.js في مجلد src/components: import React from 'react'; function About() { return <div>Hello</div>; } export default About; 3. تعديل App.js لإستدعاء مكون About في الصفحة الرئيسية: import About from './components/About'; function App() { return ( <div> <About /> </div> ); } export default App; 4. يتم تشغيل المشروع الآن باستخدام الأمر: npm start و يجب أن يتم طباعة "Hello" في الصفحة الرئيسية. يرجى ملاحظة أنه سيتعين عليك التأكد من أن React و ReactDOM مثبتان بالفعل ، وإذا لم يكن كذلك ، فيمكن استخدام npm لتثبيتهما: npm install react react-dom
  3. لإنشاء موقع الكتروني مثل اكاديمية حسوب، ستحتاج إلى مجموعة من المهارات المختلفة. من بين هذه المهارات: 1. التخطيط: عليك أولاً وضع خطة شاملة للموقع المراد إنشاؤه، يتضمن ذلك تصميم الصفحات وترتيب المحتويات وتحديد الميزات والوظائف الإضافية التي تريد تضمينها في الموقع، وأيضًا تحديد تقنيات البرمجة التي ستستخدم في تطوير الموقع. 2. تصميم: بعد إنشاء خطة مفصلة، يجب عليك تصميم واجهة الموقع باستخدام أدوات التصميم المتاحة لديك وتطبيق مبادئ التصميم المتعلقة بالألوان والصور ونمط الخط وتجربة المستخدم. 3. برمجة: بناءً على التصميم الذي تم إنشاؤه، يجب أن تبرمج الصفحات المختلفة للموقع باستخدام تقنيات البرمجة التي تعلمتها في دورة تطوير الواجهات الأمامية ودورة تطوير التطبيقات باستخدام Python، يمكن استخدام إطار عمل تطبيق الويب مثل Django، Flask، أو أي إطار عمل آخر تتقنه. 4. التجربة والتصحيح: بعد الانتهاء من تصميم وبرمجة الموقع، يجب تجربته وتحديد أي مشاكل تواجه المستخدمين وإصلاحها. 5. النشر: بعد التأكد من عدم وجود أي أخطاء، يمكن نشر الموقع على الإنترنت بإستخدام خدمات الإستضافة المختلفة واضافة الدومين الخاص بك. وبالنسبة لسؤالك عن الدورات التي انجزتها، فتُعد الدورتين التي أتممتها جيدة للبدء في عمل هذا المشروع. من خلال دورة تطوير الواجهات الأمامية، ستتعلم تصميم صفحات ويب جميلة وحديثة، ومن خلال دورة تطوير التطبيقات باستخدام بايثون، ستتعلم كيفية برمجة تطبيقات الويب باستخدام بايثون و إطار العمل Django. لكن، سيحتاج المشروع إلى جهود تنفيذية واسعة النطاق، وربما سيكون من الأفضل بالنسبة لك أن تعمل مع فريق عمل حتى تتمكن من العمل بالتنسيق مع الآخرين وشغل الوظائف المختلفة التي تتطلبها تطوير.
  4. لا يمكن تحديد سبب عدم عمل الاسكريبت من خلال الكود الذي قدمته، لأن الكود الذي قدمته هو مجرد متغيرات ودوال معرفة. بشكل عام هناك بعض الأخطاء والمشكلات البسيطة والتي قد تكون السبب في تعطل عمل الاسكريبت، مثل: 1. يجب التأكد من تضمين مكتبة jQuery في الصفحة التي يتم فيها تشغيل الكود، قم بتضمين مكتبة jQuery أولاً بإضافة السطر الآتي إلى الكود: HTML <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> 3. يجب التأكد من أن الصفحة التي يتم فيها تشغيل الكود تحتوي على العناصر اللازمة التي يستهدفها الكود، وأنها تحتوي على عناصر HTML التي تحمل الفئات التي يتم البحث عنها في الكود.، فقد يكون هناك تغيير في الصفحة قد يؤدي إلى تعطل الكود. 4. يجب تحديد ما الذي يحدث إذا لم يتم العثور على العناصر المستهدفة، فسوف يحدث خطأ، ويمكن وضع تعليمات احتياطية لمنع حدوث ذلك. 5. يجب التأكد من أن الكود يتم تشغيله في المتصفح الصحيح، وأنه يتم تشغيله في الوقت الصحيح (عندما يتم تحميل الصفحة بشكل كامل). لذلك، يمكن التحقق من هذه الأشياء ومحاولة تصحيحها، ثم إعادة تشغيل الاسكريبت للتأكد من أنه يعمل بشكل صحيح.
  5. هذا الكود يحتوي على بعض الأخطاء الصغيرة التي يجب تصحيحها. يبدو أن المشكلة الرئيسية هي أن هذا الكود يستخدام Manifest Version 3، وهذا الإصدار لا يسمح بشكل صريح بالتحميل الديناميكي للبرامج النصية من نص غير منشور بداخل الملحق نفسه. بدلاً من ذلك، يتعين عليك استخدام API محددة لتحميل البرامج النصية من نص خارجي. لتصحيح هذا الكود، يرجى اتباع الخطوات التالية: 1- استبدال `manifest_version` الحالية 3 بـ 2: JSON "manifest_version": 2, 2- التأكد من وجود الملفات `jquery.min.js` و `popup.js` في نفس المجلد المحتوي على ملف `manifest.json`. 3- التأكد من أن ملف `jquery.min.js` يحتوي على مكتبة jQuery. 4- التأكد من أن البرنامج النصي `popup.js` يحتوي على الأوامر الصحيحة وأنه يتم تنفيذه بشكل صحيح. لا يمكن أن يكون هذا البرنامج النصي فارغًا. 5. يجب التأكد من أن المواقع التي يتم تشغيل النص البرمجي بها (`matches`) تتطابق مع المواقع التي يتم تشغيل النص البرمجي فيها. 6. يجب التأكد من أن النص البرمجي يتم تشغيله في الوقت الصحيح (`run_at`)، في هذه الحالة سيتم تشغيله عندما يتم تحميل الصفحة بشكل كامل. 7. يجب التأكد من أن النص البرمجي يتم تشغيله في كل الإطارات (`all_frames`) في حال كان الموقع يحتوي على إطارات مختلفة. بعد إجراء هذه التغييرات، يجب أن يعمل الكود بشكل صحيح. ويمكنك معرفة المزيد من المعلومات عن Manifest Version 3 من خلال موقع مطورين جوجل الرسمي من هنا.
  6. عمومًا، يمكن اختراق كود PHP و أي لغة برمجة أخري إذا لم يتم كتابته بشكل صحيح وآمن(حتي إذا فعلت ذلك سوف يكون هناك فرصة لوجود ثغرات). و الاعتماد على الأمان من قبل البرمجة فقط وحده لا يكفي. لذلك، هناك بعض الأدوات والإجراءات التي يجب اتباعها لتعزيز الأمان وتجنب الاختراقات. ، منها: 1- استخدام تحقق المدخلات (input validation): يجب دائمًا التأكد من صحة البيانات التي يتم إدخالها إلى النظام، وتصحيح أي خطأ في البيانات المدخلة. وهذا يمكن تنفيذه باستخدام وظائف PHP المدمجة مثل filter_var وpreg_match. 2- استخدام SQL statements من نوع prepare() و bind_param(): هذا يعتبر ضروريًا لتجنب أي هجوم يستهدف قاعدة البيانات سواء كان SQL Injection او غيره. 3- استخدام الإصدارات الأحدث من PHP والتحديث المستمر لها: يجب تحديث النسخة الحالية من PHP بانتظام لتجنب الثغرات الأمنية وخلل الأمان. 4- عدم استخدام الكود المصدر للمكتبات العالمية (global libraries) القديمة: يمكن استخدام المكتبات الحديثة لتجنب تحديث الثغرات الأمنية بشكل منفصل لكل مكتبة منفصلة. 5- استخدام HTTPS لتشفير البيانات المنقولة عبر الشبكة: يجب توفير HTTPS في كل مرحلة من مراحل الاتصال بقواعد البيانات أو المستخدمين. يمكن تحقيق ذلك باستخدام شهادات SSL/TLS. 6- إخفاء الأخطاء: يجب عرض رسائل الخطأ بخطورة ليستأنف الهاكر عملية الاختراق. لذا يجب إخفاء هذه الرسائل من الهاكر وعرض رسائل الخطأ على المستخدم بشكل أساسي ليخبر المستخدم بالمشكلة. 7- المطابقة لمعايير OWASP: OWASP هي آلية تحتوي على جميع المعايير الأمنية لتطبيق الويب، ويجب على المطورين المطابقة لها. 8- تفعيل الحماية على مستوى السيرفر باستخدام برامج مثل mod_security. 9- تطبيق مبادئ البرمجة الآمنة مثل فصل البيانات عن الشفرة وعدم ثقة بمدخلات المستخدم. 10- استخدام إطار عمل PHP مثل Laravel أو Symfony التي تأتي بأساليب حديثة لحماية التطبيق من الهجمات. 11- إجراء فحص دوري للبرامج والسكربتات المستخدمة في الموقع لضمان عدم وجود ثغرات أو ضعف في الأمان.
  7. من الأفضل عدم تشتيت نفسك في تعلم لغات البرمجة المتعددة والتركيز على لغة واحدة في البداية لعدة أسباب: 1. أسهل في التعلم: عندما تبدأ في تعلم لغة برمجة واحدة، فإنك تستطيع التركيز بشكل أكبر على الفهم السليم للمفاهيم الأساسية، وهذا يساعدك على تعلم اللغة بسرعة أكبر. 2. التحكم الجيد: عند التركيز على لغة واحدة وفهمها جيدًا، ستتمكن من التحكم بها بشكل أفضل وتطوير برامج بشكل أكثر سلاسة، في حين أن فهم العديد من لغات البرمجة في نفس الوقت يمكن أن يؤدي إلى الخلل والتشتت. 3. الوقت والجهد: قد يستغرق تعلم لغات البرمجة المتعددة وفهمها وتطبيقها بنجاح وقتاً وجهدًا كبيرين. في حين أن التركيز على لغة واحدة في البداية سيسمح لك بتوجيه جهودك ووقتك بشكل أفضل. 4. التوظيف: يفضل صاحبو العمل توظيف الأشخاص الذين يتمتعون بالخبرة والمهارة العالية في لغة معينة، لأن هذا يعني أنه سيكونوا قادرين على العمل بشكل أكثر فعالية وتحقيق الأهداف بأفضل الطرق. 5. تنمية قدرات البرمجة: بمجرد أن تصبح ملمًا بلغة برمجة واحدة، ستصبح قادرًا على فهم لغات البرمجة الأخرى بشكل أسرع. وهذا لأن العديد من المفاهيم الأساسية هي مشتركة بين اللغات المختلفة، ولذلك سيكون من السهل على المتعلم تطبيق هذه المفاهيم على اللغات الأخرى. بالمقارنة بين التركيز على لغة واحدة مقابل تعلم أكثر من لغة برمجة، فإن التركيز على لغة واحدة سيمنحك الفرصة لتعلم المزيد عن البرمجة بشكل عميق وسريع. وبدلاً من تشتت طاقتك على تعلم لغات عديدة، يمكنك العمل على تعلم لغة واحدة واستخدامها كنقطة انطلاق لتعلم اللغات الأخرى في المستقبل
  8. يمكنك التقدم إلى امتحان الدورة (في أي وقت)، من خلال التواصل مع مركز مساعدة أكاديمية حسوب، مع مراعاة الشروط التالية: إتمام أربعة مسارات تعليمية على الأقل التطبيق العملي مع المدرب، والاحتفاظ بالمشاريع العملية الناتجة لإرسالها للمراجعة رفع المشاريع على حسابك على GitHub أولًا بأول لمشاركتها معنا و هذه خطوات الامتحان 1. تواصل معنا أخبرنا برغبتك باجراء الامتحان مع تزويدنا بروابط مشاريعك التي طبقتها أثناء الدورة. يجب أن تكون قد طبقت المشاريع مع المدرب أثناء الدورة، ولا يمكن اجراء امتحان بمشاهدة المحتوى فقط. 2. محادثة صوتية سنحدد لك موعد لاجراء محادثة صوتية لمدة 30 دقيقة يطرح المدرب فيها أسئلة متعلقة بالدورة ويناقش معك ما نفذته خلالها. 3. مشروع التخرج سيحدد لك المدرب مشروعًا مرتبطًا بما تعلمته أثناء الدورة لتنفيذه خلال فترة محددة تتراوح بين أسبوع الى أسبوعين. 4. مراجعة المشروع والتخرج سيراجع المدرب المشروع الذي أنجزته، وإن سارت جميع الخطوات السابقة بشكل صحيح، ستتخرج وتحصل على الشهادة أو يرشدك المدرّب لأماكن القصور ويطلب منك تداركها ثم التواصل معنا من جديد. يمكنك معرفة تفاصيل أكثر من خلال هذه الصفحة.
  9. لطباعة كود برمجة php أو HTML مثل ما يكون في هذه الصفحة دون أن يترجمها المتصفح، يمكنك استخدام دالة php تسمى highlight_string ، والتي تقوم بإظهار الكود بشكل ملون ومنسق. على سبيل المثال، إذا كتبت الكود التالي: PHP <?php highlight_string('<?php echo "النص النص النص"; ?>'); ?> فسيظهر في المتصفح هكذا: <?php echo "النص النص النص"; ?> ويمكنك أيضا استخدام دالة htmlentities لتحويل العلامات الخاصة في الكود إلى محارف HTML، مثل `<` و `>` و `&`. على سبيل المثال، إذا كتبت الكود التالي: PHP <?php echo htmlentities('<html><body><h1>مرحبا</h1></body></html>'); ?> فسيظهر في المتصفح هكذا: <html><body><h1>مرحبا</h1></body></html>
  10. هناك العديد من المواقع التي توفر قوالب مجانية لتطوير مواقع React. من بين هذه المواقع: React Free Themes And Templates @ Creative Tim (creative-tim.com) Free React templates and themes - DEV Community أنصحك بموقع themeforest فيوجد به الكثير من قوالب React عالية الجودة (يعتبر هذا الموقع أفضل موقع لبيع القوالب) ولكنه ليس مجاني. أنصحك بأخذ بعض الأفكار من قوالب هذا الموقع والتطبيق عليها(فهذه القوالب تباع حالياً). و يمكنك البحث عن المزيد من القوالب الجاهزة عبر محركات البحث مثل Google. بالنسبة لطريقة التعلم وتطوير مهاراتك في البرمجة، فإن استخدام القوالب الجاهزة هو طريقة جيدة للبدء والتعلم وتطوير المهارات الأساسية في React. ومع ذلك ، يجب أن تسعى إلى تطوير مهاراتك البرمجية أكثر من ذلك عن طريق العمل على مشاريع أكبر وأكثر تعقيدًا. و يمكنك البدء في مشاريع بسيطة مثل تطبيق ToDo List ومن ثم الانتقال إلى تطوير تطبيقات أكبر. كما يجب عليك المحافظة على تعلم المفاهيم الأساسية لـ React مثل العناصر الأساسية مثل الحالة والخصائص والأحداث وكيفية التعامل مع البيانات والتنقل بين الصفحات وما إلى ذلك.
  11. أكاديمية حسوب مكان جيد لتعلم البرمجة باللغة العربية الفصحي ولكن إذا كانت لغتك الأنجليزية جيدة فيوجد الكثير من الكورسات باللغة الأنجليزية أفضل من التي موجودة في حسوب. ولكن بشكل عام لا يمكنك أن تعمل في شركة بعد تعمل بعض الكورسات بل يجب أن تبني مشاريع بنفسك (غير التي في الكورسات) حتي تكتسب الخبرة التي تؤهلك للعمل. وإذا كنت سوف تتعلم من أكاديمية حسوب فيجب أن تتحدد غايتك من تعلم البرمجة بمعني أخر ماذا تريد أن تعمل بعد تعلم البرمجة, الأجابة علي هذا السؤال سوف توضح لك الكورسات التي يجب عليك دراستها. ولكن بشكل عام أنصحك بدورة علوم الحاسوب قبل أن تتخصص في أي مجال لأنها تقوم بتأسيسك في المجال بشكل عام حتي تستطيع الدخول في أي تخصص بعد ذلك بسهولة. لنفترض مثلا أنك تريد أن تصبح مطور واجهات خلفية في هذه الحالة أنصحك بدورة تطوير تطبيقات الويب باستخدام لغة PHP. أو تريد أن تكون مطور واجهات أمامية في هذه الحالة أنصحك بدورة تطوير واجهات المستخدم. وهكذا, لذلك تحديد المسار الذي سوف تسلك يعتبر نصف الرحلة و يمكنك تحديده بشكل أفضل بعد دراسة دورة علوم الحاسوب لأنك سوف تتعرف من خلالها علي أغلب مجالات البرمجة.
  12. لحذف أي عنصر من المصفوفة يحتوي على نفس اسم ال HTML tag للعنصر الذي بعده، يمكنك استخدام الوظيفة splice() لإزالة العنصر بناء على مؤشره . لكن قبل ذلك، يجب عليك تحديد المؤشرات التي تريد حذفها بواسطة حلقة تمر على المصفوفة وتقارن اسم ال HTML tag لكل عنصر مع العنصر التالي باستخدام ال regex pattern الذي ذكرته. هذا مثال على كيفية فعل ذلك: javascript // المصفوفة الأصلية let array = [ 'a:href,title', 'a:href,title,accesskey', 'div:class', 'div:class,role,id', 'h3:', 'li:id', 'ul:' ]; // مصفوفة فارغة لتخزين المؤشرات التي تريد حذفها let indices = []; // حلقة تمر على المصفوفة من البداية إلى ما قبل النهاية for (let i = 0; i < array.length - 1; i++) { // استخدام regex لتحديد اسم ال HTML tag باستخدام ال pattern \w+(?=\:) let tag = array[i].match(/\w+(?=\:)/)[0]; // مقارنة اسم ال HTML tag مع العنصر التالي if (array[i + 1].startsWith(tag)) { // إضافة المؤشر إلى مصفوفة العناصر indices.push(i); } } // حلقة تمر على مصفوفة المؤشرات من النهاية إلى البداية for (let j = indices.length - 1; j >= 0; j--) { // استخدام splice لحذف العنصر بناء على المؤشر array.splice(indices[j], 1); } // طباعة المصفوفة النهائية console.log(array); النتيجة هي: [ 'a:href,title,accesskey', 'div:class,role,id', 'h3:', 'li:id', 'ul:' ]
  13. لا يمكنني الإجابة علي الأسئلة الامتحانية لذلك أنصحك بالمحاولة وإذا واجهتك أي مشاكل يمكنك السؤال وسوف نساعدك.
  14. أنصحك بتصفح هذه النقاشات فهي تجيب علي سؤالك. تجربتي مع دورة تطوير واجهات المستخدم من أكاديمية حسوب - حسوب I/O (hsoub.com)
  15. يمكنك استخدام مفهوم الـ templating في لغة PHP باستخدام مكتبة Blade المدمجة في Laravel. لذلك، يجب أولاً تثبيت Laravel في جهازك حتى تتمكن من استخدام Blade. بعد التثبيت، يمكنك إنشاء ملف HTML جديد وتضمين المتغير `{{$userName}}` فيها كالتالي: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>page 1</title> </head> <body> <h1>Hello {{$userName}}!</h1> </body> </html> يمكنك ملاحظة استخدام `{{$userName}}` داخل عناصر HTML مثل العنوان والفقرة. بعد ذلك، يمكنك تمرير قيمة المتغير `userName` هذا النمط الـ template باستخدام كود PHP في المثال التالي: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>page 1</title> </head> <body> <h1>Hello {{$userName}}!</h1> <?php $userName = "moo"; ?> </body> </html> عند فتح هذه الصفحة، ستظهر قيمة المتغير `userName` داخل العنصر `<h1>` كما يلي: Hello moo
  16. الهاكر الأخلاقي هو شخص يستخدم مهاراته في البرمجة والشبكات وأمن المعلومات لاختبار وتحسين أنظمة الحاسوب والتطبيقات والبيانات من خلال محاولات مصرح بها للوصول غير المصرح به إلى نظام حاسوب أو تطبيق أو بيانات. يستخدم الهاكر الأخلاقي نفس الأدوات والتقنيات التي يستخدمها المتسللون، ولكن بغرض تحديد الثغرات الأمنية وإصلاحها قبل أن يتمكن المتسللون من استغلالها. يجب على الهاكر الأخلاقي احترام قانونية وشرعية عمله، والحصول على موافقة كتابية من صاحب النظام أو التطبيق أو البيانات قبل إجراء أي اختبار أمني . الهاكر الأخلاقي يحتاج إلى معرفة جيدة بالبرمجة والخوارزميات وOOP، لأن هذه المعارف تساعده على فهم كيفية عمل الأنظمة والتطبيقات، وكيفية اكتشاف واستغلال نقاط ضعفها. كما يحتاج إلى كتابة أكواد كثيرة لإنشاء أدوات وبرامج خاصة به لإجراء عمليات الاختراق. لذلك، فإن الهاكر الأخلاقي يشبه مطور الموقع أو الموبايل في بعض الجوانب، لكن بغرض مختلف. نظام لينكس هو الأفضل للهاكر الأخلاقي لعدة أسباب، منها: - نظام لينكس هو نظام مفتوح المصدر، مما يعطي الهاكر الأخلاقي حرية كبيرة في تعديل وتخصيص نظامه حسب احتياجاته. - نظام لينكس يحتوي على مجموعة كبيرة من الأدوات والبرامج المجانية والمفتوحة المصدر التي تساعد الهاكر الأخلاقي في إجراء عمليات الاختراق، مثل Nmap، Metasploit، Wireshark، Kali Linux، Parrot OS، etc. - نظام لينكس يعتمد بشكل كبير على سطر الأوامر (command line) ، مما يجعل الهاكر الأخلاقي أكثر قدرة على التحكم في نظامه وإجراء عمليات معقدة بسهولة. فيروسات الحاسوب هي برامج ضارة تستخدم للتسلل إلى الأنظمة والتطبيقات والشبكات، و هي كود مكتوب بلغة برمجة معينة. مجال أمن المعلومات يتطلب خبرة ومعرفة جيدة في البرمجة والأمن، وإذا كنت تحب البرمجة فإن العمل في مجال أمن المعلومات قد يكون لك. ومن المهم أن تحصل على التدريب المناسب والشهادات المعترف بها لتكون مؤهلاً للعمل في هذا المجال.
  17. هذا سؤال جيد وليس له إجابة واحدة صحيحة. كل شخص لديه طريقته الخاصة في التعلم والحفظ. بشكل عام، أنا أنصحك بأن تحاول فهم المفاهيم والمبادئ الأساسية للبرمجة قبل أن تحفظ الشفرة. هذا سيساعدك على تطوير مهارات التفكير النقدي والإبداعي والحلول المشكلات. إذا فهمت لماذا تكتب الشفرة بطريقة معينة، ستكون قادرا على تطبيقها في مشاريع مختلفة وتعديلها حسب احتياجاتك. حفظ الشفرة قد يكون مفيدا في بعض الحالات، مثل عندما تحتاج إلى استخدام نفس الشفرة مرارا وتكرارا أو عندما تواجه اختبار أو مقابلة. ولكن حفظ الشفرة دون فهمها قد يجعلك تعتمد على الذاكرة فقط ولا تستطيع التكيف مع المواقف الجديدة أو حل المشكلات الصعبة. لذلك، أقترح عليك أن تجد التوازن بين الحفظ والفهم، وأن تستخدم كلاهما كأدوات لتحسين مستواك في البرمجة. و يجب عليك التركيز على الفهم والتدريب الجيد لأنهما هما الأساس الذي سيضمن لك القدرة على إنشاء تطبيقات عالية الجودة في المستقبل.
  18. نعم، يعتبر لابتوب ماك بوك اير جيد جدًا لتعلم البرمجة. والسبب في ذلك هو : 1- نظام التشغيل: يعمل اللابتوب بنظام تشغيل macOS، والذي يعد من أفضل أنظمة التشغيل لتطوير البرامج؛ فهو يتميز بسلاسة في الأداء وسهولة الاستخدام والأمان. 2- المواصفات الفنية: يحتوي لابتوب ماك بوك اير على معالج Intel Core i5/i7 و رامات بحجم يصل إلى 16 جيجابايت ومساحة تخزين تصل إلى 1 تيرابايت، مما يجعله مناسبًا لتشغيل أي نوع من برامج التطوير. 3- البرامج المدمجة: يأتي لابتوب ماك بوك اير مع الكثير من البرامج المدمجة التي يمكن استخدامها في تطوير البرمجيات، مثل Xcode وTerminal، اللذان يجعلان عملية تطوير البرامج أسهل وأسرع. بالإضافة إلى ذلك، لابتوب ماك بوك اير يتمتع ببطارية تدوم طويلاً، وشاشة عالية الدقة، وكاميرا ويب وميكروفون جيدين، ولوحة مفاتيح مضاءة، ومستشعر بصمة الإصبع، وغيرها من المزايا التي تزيد من راحة المستخدم وإنتاجيته. إذًا، يمكننا القول إن لابتوب ماك بوك اير جيد لتعلم البرمجة، ولكنه ليس الخيار الأفضل أو الأسهل دائمًا. فقد يحتاج المبرمج إلى التعود على نظام macOS وطريقة استخدامه، وقد يجد صعوبة في تثبيت بعض البرامج أو التطبيقات التي تعمل فقط على نظام Windows. كما قد يحتاج إلى دفع مبلغ كبير لشراء هذا اللابتوب، مقارنة بأجهزة أخرى ذات جودة عالية. لذلك، يجب على المبرمج دراسة كافة الخيارات المتاحة قبل اتخاذ قرار شراء لابتوب معين.
  19. إذا كنت مبتدئا في البرمجة، فهناك بعض النصائح التي يمكن أن تساعدك على البدء بالطريقة الصحيحة. أولا، عليك اختيار لغة برمجة تناسب اهتماماتك وأهدافك هناك العديد من اللغات المختلفة، ولكل منها مزايا وعيوب خاصة بها. بعض اللغات سهلة التعلم والاستخدام، وبعضها قوية ومرنة، وبعضها شائعة ومطلوبة في سوق العمل. يمكنك البحث عن مقارنات بين اللغات المختلفة، أو استشارة أشخاص لديهم خبرة في هذا المجال. ثانيا، عليك تعلم أساسيات البرمجة مثل المتغيرات والعوامل والدوال والشروط والحلقات والمصفوفات والكائنات. هذه هي المفاهيم الأساسية التي تشترك فيها معظم اللغات، وتساعدك على فهم طريقة عمل البرامج. يمكنك تعلم هذه الأساسيات من خلال كتب أو دورات أو فيديوهات أو مواقع إلكترونية مخصصة لذلك. ثالثا، عليك التدرب بشكل مستمر على كتابة البرامج، وحل المشاكل، وإصلاح الأخطاء لا يكفي أن تقرأ أو تشاهد فقط، بل عليك أن تطبق ما تعلمته بنفسك. يمكنك استخدام برامج تحرير النصوص أو بيئات التطوير المتكاملة لكتابة وتشغيل البرامج. كما يمكنك البحث عن تحديات أو مسابقات أو مشاريع تساعدك على تطوير مهاراتك وإبداعك. رابعا، عليك التواصل مع المبرمجين الآخرين، سواء من خلال منتديات أو مجتمعات هذا يساعدك على تبادل الأفكار والخبرات والنصائح، وتعلم من أخطاء وإنجازات الآخرين، والحصول على تشجيع ودعم. كما يساعدك على تحسين قدرتك على التعاون والتفاهم مع الآخرين في إنجاز المشاريع المشتركة. خامسا، عليك أن تستمر في التعلم والتحديث باستمرار فالبرمجة مجال متغير ومتطور بسرعة. يجب أن تتابع آخر التطورات والتقنيات حيي تستطيع مواكبة سوق العمل. و بما أنك مبتدئً في البرمجة، فيمكن تبدأ بلغة بسيطة وسهلة مثل Python، حيث تتميز بسهولة التعلم والاستخدام، كما يتم استخدامها في العديد من المجالات الحديثة مثل الذكاء الاصطناعي والتحليل الإحصائي. لتبدأ في تعلم Python، يمكنك القيام بهذه الخطوات: تحميل برنامج Python المناسب لنظام التشغيل الذي تستخدمه من الموقع الرسمي لـ Python. تعلم أساسيات اللغة من خلال الدروس المتاحة على الإنترنت، مثل Codecademy أو Udemy أو Coursera أو أكاديمية حسوب. تطبيق ما تعلمته عن طريق كتابة برامج بسيطة على جهاز الكمبيوتر الخاص بك. استكشاف المجالات المختلفة التي يمكن استخدام Python فيها، مثل الويب والتعلم الآلي والحوسبة العلمية. مع مزيج من الدراسة والتطبيق، ستكون قادرًا على تطوير مهارات برمجية قوية وإنشاء برامج بسيطة في وقت قصير. وهذه بعض الفيديوهات المفيدة أنصحك بمشاهدتها.
  20. Godot 4 هو محرك ألعاب مفتوح المصدر يدعم العديد من لغات البرمجة، بما في ذلك لغة بايثون. لغة بايثون هي لغة برمجة عالية المستوى تتميز بسهولة القراءة والكتابة والتعلم. يمكن استخدام لغة بايثون في Godot 4 من خلال إضافة تسمى PyScript، والتي تسمح بكتابة البرامج النصية والمكونات الإضافية والأدوات بلغة بايثون داخل محرك الألعاب. لتتقبل Godot 4 لغة بايثون، يجب تثبيت إضافة PyScript على جهازك وإضافتها إلى مشروعك في Godot 4. يمكنك تحميل إضافة PyScript من موقعها الرسمي أو من متجر الأصول في Godot 4. بعد تحميل الإضافة، يجب نسخ مجلد PyScript إلى مجلد addons داخل مجلد مشروعك في Godot 4. ثم يجب تفعيل الإضافة من خلال قائمة Project > Project Settings > Plugins في Godot 4. بعد تفعيل الإضافة، يمكنك كتابة البرامج النصية بلغة بايثون في Godot 4 بسهولة. يجب أن تحتوي كل ملف نصي على امتداد .py وأن يرث من فئة Godot أو أحد فئاتها الفرعية. يمكنك استخدام المحرر المدمج في Godot 4 أو أي محرر نصوص آخر لكتابة البرامج النصية بلغة بايثون. يمكنك أيضاً استخدام كافة الميزات والأدوات المتاحة في Godot 4مع لغة بايثون، مثل نظام المشاهد والإشارات والحاويات والرسوم المتحركة وغيرها. لغة بايثون هي لغة برمجة قوية ومرنة تستطيع من خلالها إنشاء ألعاب رائعة في Godot 4.
  21. لا, لا يمكنك تحميل دورات أكاديمية حسوب لمشاهدتها offline. يمكنك فقط مشاهدتها online علي موقع الأكاديمية. ولكن يمكنك الوصول للفيديوهات في اي وقت تريد.
  22. يوجد الكثير من الكورسات علي الأنترنت لتعليم لغة Python منها باللغة العربية ومنها باللغة الأنجليزية. إذا كنت ترغب في تعلم لغة بايثون باللغة الإنجليزية، فهناك العديد من الكورسات المتاحة على الإنترنت تقدم لك شرحًا مفصلًا لأساسيات ومفاهيم هذه اللغة مثل: - Python for Everybody Specialization من منصة كورسيرا: هذا الكورس هو واحد من أشهر وأفضل الكورسات باللغة الإنجليزية لتعليم لغة بايثون، حيث يقدم لك شرحًا سهلاً وبسيطًا لأساسيات لغة بايثون وكيفية استخدامها في مجالات مختلفة مثل تحليل البيانات، والشبكات، والوصول إلى قواعد البيانات، وغيرها. يتألف هذا الكورس من خمس دورات تدريبية تغطي مختلف جوانب لغة بايثون، ويمكنك التسجيل فيه مجانًا أو طلب دعم مادي للحصول على شهادة من جامعة ميشيغان. وأنصحك بتصفح هذه النقاشات لمعرفة مصادر جيدة لتعلم لغة Python باللغة العربية. مصادر عربية لتعلم لغة البرمجة بايثون - حسوب I/O (hsoub.com) مسار تعلم بايثون ٢٠٢٠ - حسوب I/O (hsoub.com) ويمكنك تعلم Python من خلال هذا الكتاب. وبالتأكيد من أفضل الكورسات لتعلم Python باللغة العربية هو كورس أكاديمية حسوب لتعلم لغة Python يمكنك تصفح محتويات الكورسات والكثير من المعلومات عن هذا الكورس والمميزات التي يقدمها من خلال هذه الصفحة.
  23. بعد تصميم الواجهة الأمامية لموقع ما، تحتاج إلى تطوير الواجهة الخلفية التي هي المسؤولة عن معالجة البيانات والتفاعل مع قواعد البيانات والخوادم. لتطوير الواجهة الخلفية، تحتاج إلى مطور الواجهات الخلفية الذي يستخدم لغات برمجة مثل **PHP** أو **Python** أو **Java** أو **Ruby** وإطارات عمل مثل **Laravel** أو **Django** أو **Spring** أو **Rails**. مطور الواجهات الخلفية يبدأ بتحديد متطلبات المشروع والمهام التي يجب تنفيذها والتقنيات التي يجب استخدامها. ثم يكتب التعليمات البرمجية لإنشاء واجهات برمجة التطبيقات (APIs) والروابط (endpoints) والخوارزميات والدوال التي تسمح بالتواصل بين الواجهة الأمامية وقاعدة البيانات والخادم. كما يقوم بإجراء اختبارات وتصحيح أخطاء وتحسين أداء التطبيق. يبدو أنك سمعت أنه بعد إطلاق الموقع على الويب، يتم إدارته عن طريق **WordPress**. ولكن هذا لا يعتبر تخصصًا أو يحتاج إلى كورس أو خبرة، بل هو نظام إدارة محتوى (CMS) يسهل عليك إضافة أو تعديل أو حذف المحتوى على موقعك دون الحاجة إلى التعامل مع التعليمات البرمجية. لإدارة موقعك عن طريق WordPress، تحتاج إلى تثبيته على خادمك وإنشاء حساب مستخدم لديه صلاحيات إدارية. ثم تستطيع الدخول إلى لوحة التحكم (dashboard) حيث تجد خيارات مختلفة لإدارة المظهر (appearance) والإضافات (plugins) والصفحات (pages) والمقالات (posts) والقائمة (menu) وغيرها من المكونات المرئية وغير المرئية لموقعك. عند تصميم الموقع، يجب أن نأخذ بعين الاعتبار أن الصور التي نستخدمها تتناسب مع حجم وشكل العناصر الأخرى في الصفحة. إذا قمنا بتغيير حجم أو نسبة الصور، فقد يؤدي ذلك إلى تشويه التصميم أو إخفاء بعض المحتوى. لذلك، ينصح باستخدام أدوات مثل CSS Grid أو Flexbox لترتيب العناصر بطريقة مرنة ومتجاوبة مع مختلف الأجهزة والشاشات. كما يمكن استخدام خاصية srcset في عنصر img لتحديد صور مختلفة بحسب عرض الشاشة. هذه الطرق تساعد على جعل الموقع بدون أخطاء ومتكامل واحترافي. - إضافة لغات متعددة للموقع هي وظيفة تشترك فيها كلا من مطور الواجهات الأمامية والخلفية. مطور الواجهات الأمامية يقوم بإنشاء قائمة للاختيار بين اللغات المتاحة وتغيير ترتيب واتجاه العناصر بحسب اللغة المختارة. مطور الواجهات الخلفية يقوم بإنشاء قاعدة بيانات تحتوي على المحتوى المطلوب بكل لغة وإرساله إلى الواجهة الأمامية عند طلبه. إذا أردنا إضافة ثلاث لغات مثلا، فيجب أن نضمن أن كل صفحة في الموقع لديها نسخة مطابقة باللغات الثلاث. تكلفة تصميم هذا الموقع تعتمد على عدة عوامل، مثل عدد ونوعية الصفحات، والمحتوى المطلوب، والمهارات والخبرة التي يتمتع بها المطور. لكن بشكل تقريبي، يمكن أن نقول أن تكلفة تصميم هذا الموقع تتراوح بين 250 و 500 دولار أمريكي (يمكنك معرفة هذه الأسعار من خلال تصفح موقع مستقل للعمل الحر). هذه التكلفة تشمل فقط عملية التصميم والبرمجة، ولا تشمل التكاليف الأخرى التي قد تحتاجها لإطلاق الموقع، مثل شراء اسم نطاق، أو استضافة، أو شهادة SSL، أو خدمات دعم فني.
  24. إذا كنت تريد فهم البرمجة وتعلم مبادئها وأساسياتها، فهناك العديد من الكورسات المجانية التي يمكنك الاستفادة منها. وفيما يلي بعض الأمثلة على هذه الكورسات: - تعلم البرمجة وفهم مبادئها وأساسياتها - مهارات من Google: هذا الكورس يقدم مقدمة عن أساسيات الرموز البرمجية وكيفية استخدامها لإنشاء مشاريع بسيطة ومفيدة. يغطي الكورس لغات مثل HTML وCSS وJavaScript وPython، ويتضمن تمارين عملية وشهادة مجانية بعد إكمال جميع المواضيع. - أفضل الكورسات المجانية لتعلم البرمجة من البداية وحتى الاحتراف - أراجيك: هذا المقال يستعرض مجموعة من الكورسات المجانية التي تقدمها جامعات ومؤسسات مرموقة في مجال علوم الحاسوب والبرمجة، مثل معهد ماساتشوستس للتكنولوجيا MIT، وجامعة هارفرد، وUdemy. تشمل هذه الكورسات لغات مختلفة مثل بايثون، وجافا، وC، وC++، والخوارزميات، والتعلم الآلي، وبرمجة الويب. ولكن إذا كنت تريد كورس باللغة العربية الفصحي مع دعم ممتاز بمعني (إذا واجهت أي مشكلة خلال الكورس يوجد أكثر من مدرب لحل هذه المشكلة). هذه الصفحة فيها جميع كورسات أكاديمية حسوب, أنصحك أن تبدأ بكورس علوم الحاسوب إذا كنت تريد تعلم البرمجة من البداية.
  25. لإزالة المسافات من نص بلغة جافاسكربت، يمكن استخدام عدة طرق مختلفة، حسب الحالة والمطلوب. وهذه بعض الأمثلة بالكود: - لإزالة المسافات الجانبية من بداية ونهاية النص، يمكن استخدام الدالة trim()، التي ترجع نسخة جديدة من النص دون المسافات الزائدة. مثال: let day = " friday "; day = day.trim(); // "friday" - لإزالة جميع المسافات من النص، بغض النظر عن موقعها، يمكن استخدام الدالة replace()، التي تستبدل جزء من النص بآخر. في هذه الحالة، نستبدل المسافات بفراغات. مثال: let name = " John Smith "; name = name.replace(/ /g, ""); // "JohnSmith" - لإزالة المسافات من بين كلمات معينة في النص، يمكن استخدام الدالة slice()، التي ترجع جزء من النص بين موضعين محددين. مثال: let str = "Hello World"; str = str.slice(0, 5) + str.slice(6); // "HelloWorld"
×
×
  • أضف...