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

عبدالباسط ابراهيم

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

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

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

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

    12

كل منشورات العضو عبدالباسط ابراهيم

  1. وعليكم السلام ورحمة الله وبركاته. يعتبر الـ Command Line أو سطر الأوامر هو واجهة نصية تستخدم لإدخال الأوامر إلى نظام التشغيل وتنفيذها وذلك بدلاً من استخدام الواجهة الرسومية حيث كما تعلم فإن معظم العمليات التي تقوم بها في نظام التشغيل يتم عن طريق واجهة رسومية . ولكن ما الفائدة من استخدام سطر الأوامر بدلاً من الواجهة الرسومية . يتميز سطر بقدرته على توفير تحكم مباشر وسريع في العمليات المختلفة داخل النظام. لذلك يعتبر أداة قوية جداً للمبرمجين والمطورين والمستخدمين المتقدمين لنظام التشغيل . ويمكنك الإستفادة من خلاله بالكثير من المهام فمثلاً يمكنك الوصول إلى وظائف النظام المتقدمة التي قد لا تكون متاحة من خلال الواجهة الرسومية والعديد من المهام الأخرى التي تتطلب سطر الأوامر
  2. بالإضافة للشرح الرائع في التعليق السابق ولكن سأحاول توضيح جزئية بسيطة وهي أن المعالج (CPU)، يحتوي على ملايين الترانزستورات التي تعمل كأبواب صغيرة تفتح وتغلق بناءً على التيار الكهربائي كما تعلمت مما تجعله يستطيع تنفيذ مليارات التعليمات في الثانية الواحدة وهذا هو الأساس لكل شيء في الحوسبة. أما بالنسبة للسؤال الثاني والأساسي فيمكنك الإطلاع على الإجابات التالية حيث تشرح ذلك بالتفصيل
  3. تختلف عمولة التحويلات والإرسال عبر بايونير حسب نوع المعاملة والجهة المستلمة فالأفضل هو التحدث مع البنك الخاص بحساب البنكي والاستفسار ومعرفة البنك الوسيط إذا كان موجوداً . ولكن سأحاول توضيح بالعمولات الأساسية لك أولاً التحويل من حساب بايونير إلى حساب بايونير آخر أعتقد أن هذه الخدمة مجانية. ولكن التحويل من حساب بايونير إلى حساب بنكي فتختلف الرسوم بناءً على البلد والعملة، وعادةً ما تتراوح بين 1% إلى 3% من المبلغ المحول. حيث تختلف من البنك الخاص بالحساب البنكي ثم لو كان موجوداً بنك وسيط سيكون هناك عمولة أيضاً وأيضاً عند تحويل العملة يوجد عمولة لذلك يفضل التواصل مع البنك والإستفسار عن جميع التفاصيل التي تحتاجها
  4. وعليكم السلام ورحمة الله وبركاته. نعم، بالتأكيد تعتبر هندسة الشبكات من المجالات المطلوبة . حيث ببساطة كلما زاد الاعتماد على التكنولوجيا، زادت الحاجة إلى شبكات آمنة وفعالة. وبعد دراستها يمكنك العمل كمهندس شبكات وهو مسؤول عن تصميم وإدارة وحماية الشبكات الداخلية في الشركات أو المؤسسات وبالتأكيد يوجد تخصصات أكثر في هذه المهمة. ولا تقلق فالطلب على مهندسي الشبكات مرتفع ، سواء في قطاع الأعمال أو مجال تقنية المعلومات، لذا هي مهنة ذات طلب كبير. أما بالنسبة للعلاقة بين هندسة الشبكات فلا يوجد علاقة مباشرة بين تطوير واجهة المستخدم وهندسة الشبكات. ولكن من المهم أن يكون لديك فهم أساسي لعلوم الحاسب مثل الأنظمة التشغيلية، بروتوكولات الشبكات، والأمن السيبراني قبل أن تتعمق في هندسة الشبكات.
  5. كما تعلم فإنه لا يوجد حالياً دورة مختصة بمجال الامن السيبراني ولكن في أكاديمية حسوب يمكنك الإستفادة من دورة علوم الحاسوب حيث تتعلم أساسيات علم الحاسوب حيث أنه لتعلم هذا المجال هناك العديد من الأساسيات التي يجب عليك تعلمها ويتم توفير هذه الأساسيات في دورة علوم الحاسوب ولكن عموماً لا تقف منتظراً الدورة فيمكنك الإطلاع على المصادر المتوفرة في هذا المجال وذلك الأفضل دائماً ومن خلال التحدث مع مركز المساعدة فيمكنك معرفة إذا كان هناك خطة لإطلاق مثل هذه الدورة أم لا حالياً لذلك حاول الإطلاع على المصادر الموجود بالتعليق التالي
  6. الأفضل حالياً هو مواصلة التعلم وتطوير مهاراتك بشكل أكثر أهتماماً من الحصول على عمل ومع ذلك يمكنك تقديم خدمات تحليل البيانات للأصدقاء، العائلة، أو حتى الأفراد في مجتمعك المحلي الذين قد يحتاجون إلى هذه المهارات من خلال مواقع التواصل الإجمتاعي مثلاً . وهناك بعض الشركات قد تكون أكثر مرونة فيما يخص العمر وقد تحتاج إلى شخص ذو مهارات مقابل مشروع محدد. يمكنك التواصل معهم بشكل مباشر أو عبر منصات التواصل الاجتماعي لعرض خدماتك.
  7. بالإضافة للطريقة التي اقترحها محمد في التعليق السابق يمكنك استخدام إضافة للمتصفح تسمح لك بجعل أي موقع في الوضع الداكن ويمكنك تثبيتها من خلال الرابط التالي وبعد تثبيتها يمكنك الضغط عليها ثم تحديث الموقع وسيتغير معك ويجب ملاحظة أنه في المواقع التي لا تسمح بذلك لا تجد المظهر الخاص بها أفضل شئ https://chromewebstore.google.com/detail/super-dark-mode/nlgphodeccebbcnkgmokeegopgpnjfkc
  8. أولاً على الرغم من أن الشهادة مهمة، إلا أن المهارات العملية والتجربة الحقيقية تعتبر الأهم في سوق العمل. لذلك من الأفضل أن تستخدم الشهادة كباب للدخول إلى الفرص وتدعيمها بمشاريع عملية . وبالنسبة للسؤال حول أهمية الشهادة من أكاديمية حسوب فتعتبر الشهادة تساعد في بناء الثقة لدى أصحاب العمل، حيث أنهم يرون أن المتقدم للوظيفة قد اجتاز مسارًا تدريبيًا معترفًا به ومتعلمًا بشكل جيد وذلك يحدث نتيجة الإختبار الذي تقوم بإجتيازه والتطبيقات العملية الموجودة في الدورة لذلك عند وضع الشهادة على موقع مثل linkedin فذلك يسهل الحصول على فرص عمل في الشركات التي تقدر هذه الشهادة.
  9. شرح مصطفى في التعليق السابق الفرق بشكل رائع ولكن لنحاول أولاً معرفة ما هي الخاصية prototype في JavaScript، كل دالة عبارة عن كائن لذلك تحتوي على خاصية تُسمى prototype. هذه الخاصية تستخدم لتخزين الخصائص والدوال التي تُستخدم عندما تقوم بإنشاء كائنات جديدة باستخدام هذه الدالة كمنشئ (constructor) بواسطة الكلمة المفتاحية new. للتوضيح أكثر لنفترض Person هي دالة تقليدية تحتوي على خاصية prototype التي تحتوي على دالة مثلاً sayHello. هذا يعني أن أي كائن يتم إنشاؤه بواسطة Person سيحصل على هذه الدالة من خلال سلسلة ال prototype. ولكن بالنسبة للدوال السهمية (Arrow Functions) تم تقديمها في ES6 وهي دوال تتميز بالعديد من الخصائص الجديدة. ولكن الدوال السهمية لا تحتوي على خاصية prototype حيث تم تصميمها لتكون أكثر بساطة وتستعمل بشكل رئيسي كدوال غير موجهة. لذلك لا يمكن استخدام الدوال السهمية كمنشئات: لا يمكنك استخدام دالة سهمية مع الكلمة المفتاحية new لإنشاء كائنات جديدة. لذلك، لا حاجة لتوفير خاصية prototype في الدوال السهمية، لأنها ليست مصممة لهذا الغرض.
  10. تعتمد المدة الزمنية للدراسة يومياً على مدى تفرغك اليومي وقدرة على الاستمرار في التعلم بشكل جيد حيث لا يجب الاستماع فقط للدورة إنما التطبيق العملي مهم جداً ولكن حاول الاستمرار والالتزام بتخصيص وقت يومي للدورة، حتى لو كان قصيرًا، بدلاً من محاولة دراسة محتوى كبير في يوم واحد. ويجب الملاحظة أن الدورات عموماً المختصة بالبرمجة تحتوي على تطبيقات عملية و تمارين، فمن الأفضل تخصيص وقت إضافي بعد الاستماع للتطبيق العملي، حيث يساعد ذلك على تعزيز الفهم. ويفضل الإطلاع على الإجابات التالية للاستفادة في تحديد طريقة التعلم الجيدة
  11. كما بالتعليقات السابقة تحتاج فقط لإضافة اسم الملف الذي تريد تجاهله إلى .gitignore. على سبيل المثال، إذا كان لديك ملف اسمه example.txt داخل الفولدر، أضف السطر التالي إلى .gitignore folder_name/example.txt ولكن يجب ملاحظة أنه إذا كان الملف موجودًا في عدة مجلدات بنفس الاسم وقمت بإضافة الاسم فقط بدون كتابة المسار إلى هذا الملف تحديداً سيتم تجاهل الملفات في مختلف مجلدات المشروع وإذا كنت تريد تجاهل file1.txt في أي مكان داخل المشروع، سواء كان داخل my_folder أو أي مجلد آخر، قم بكتابة اسم الملف فقط file1.txt
  12. وعليكم السلام ورحمة الله وبركاته. أنصحك بالتأكيد بدراسة الذكاء الاصطناعي، خاصة إذا كنت تشعر بالشغف تجاهه. ولكن يجب معرفة أن مجال الذكاء الاصطناعي يشمل جوانب متعددة، مثل تعلم الآلة (Machine Learning)، ومعالجة اللغة الطبيعية (Natural Language Processing)، وغيرها من المجالات الفرعية التي تسهم في تطوير تقنيات مبتكرة. ولذلك للدخول إلى هذا المجال يجب عليك تعلم بعض الأساسيات أولها بما أنك تتعلم حالياً لغة بايثون فحاول الاستمرار في تعلم بايثون حيث تفيدك كثيراً في مجال الذكاء الاصطناعي. ويفضل الإطلاع على الإجابات التالية للمزيد من التفاصيل
  13. وعليكم السلام ورحمة الله وبركاته. أولاً المكتبات os و sys و platform تُستخدم للتعامل مع نظام التشغيل ، ولكن لكل منها وظائف مختلفة كالتالي: أولاً مكتبة os: توفر واجهة للتعامل مع نظام التشغيل بشكل مباشر. تُستخدم للتعامل مع الملفات والمجلدات، مثل إنشاء وحذف ونقل الملفات والمجلدات. تسمح بالوصول إلى متغيرات البيئة الخاصة بنظام التشغيل. ثانياً مكتبة sys: تتيح لك التفاعل مع مكونات النظام المتعلقة بمفسر بايثون نفسه، مثل التعامل مع مسار البحث عن المكتبات (sys.path)، إنهاء البرنامج (sys.exit())، والوصول إلى معلومات النظام مثل إصدار بايثون المستخدم. وأخيراً مكتبة platform: تُستخدم للحصول على معلومات حول المنصة أو نظام التشغيل الذي يعمل عليه البرنامج. توفر معلومات مثل نوع نظام التشغيل، إصدار بايثون، معمارية المعالج، وغيرها. بشكل عام، تُستخدم مكتبة os للتعامل مع نظام الملفات والعمليات المرتبطة بنظام التشغيل، بينما تُستخدم مكتبة sys للتعامل مع بيئة بايثون نفسها، أما مكتبة platform فتُستخدم للحصول على معلومات عن النظام والمنصة.
  14. هناك عدة طرق أخرى للحصول على موقع المستخدم بجانب استخدام Geolocation API مباشرة كما أخبرك مصطفى في التعليق السابق منها استخدام حزم تسهل عليك هذه العملية مع إضافة بعض المميزات مثل مكتبة Geolocator.js تعتبر بسيطة و تسهل العمل مع Geolocation API. تقوم بتجريد التعقيدات وتجعل التعامل مع الموقع أكثر سهولة. <script src="https://cdnjs.cloudflare.com/ajax/libs/geolocator/2.1.7/geolocator.js"></script> <script> Geolocator.locate(function(position) { console.log("Latitude: " + position.coords.latitude); console.log("Longitude: " + position.coords.longitude); }); </script>
  15. إذا كان هذا السؤال خاصة بأحد دروس الأكاديمية، ستجد أسفل فيديو الدرس في نهاية الصفحة صندوق تعليقات كما هنا، أرجو طرح الأسئلة أسفل الدرس وليس هنا في قسم الأسئلة البرمجة حيث نطرح الأسئلة العامة الغير متعلقة بمحتوى الدورة أو الدرس، وذلك لمساعدتك بشكل أفضل. ولكن سأحاول توضيح ل المشكلة لك أو بسبب أن العنصر filter-options تأخذ الخاصية position:absolute فإنها لا تعمل مع ال z-index لذلك لحل المشكلة احذف ال z-index للعنصر .add-to-fav وبالنسبة للمشكلة الثانية فهي سلوك طبيعي للكود الموجود حيث أن الكود التالي filterContent.addEventListener('click', function (event) { const filterGroup = event.target.closest('.filter-group'); if (filterGroup) { filterGroup.remove(); const filterTab = Array.from(filterTabs).find(tab => tab.dataset.target === filterGroup.id.replace('active-', '')); if (filterTab) { filterTab.classList.remove('selected'); } } }); مسؤل عن حذف ال filterGroup عن الضغط عليها ولكن حاول التعديل على هذا الكود ليجعل حذف ال filterGroup عند تغيير قيمة ال select مثلاً كالتالي filterContent.addEventListener('change', function (event) { // التحقق من أن العنصر الذي تم التفاعل معه هو select if (event.target.matches('select')) { const filterGroup = event.target.closest('.filter-group'); if (filterGroup) { filterGroup.remove(); // العثور على التبويب المرتبط بمجموعة الفلترة هذه const filterTab = Array.from(filterTabs).find(tab => tab.dataset.target === filterGroup.id.replace('active-', '')); if (filterTab) { filterTab.classList.remove('selected'); } } } });
  16. كما أخبرك مصطفى فإنه هناك الكثير من المبرمجين الناجحين الذين لم يدرسوا في الجامعات المتخصصة بالمجال بل اكتفوا بالتعلم الذاتي والعمل على المشاريع الحقيقية.ولكن يجب توضيح أن دور الجامعة لا يقتصر على الأساسيات التي تتعلمها وما إلى ذلك إنما الجامعة توفر بيئة مثالية لبناء شبكة علاقات مهنية. فيمكنك التواصل مع أساتذة محترفين في المجال وزملاء يشاركونك نفس الاهتمامات. هذه الشبكة يمكن أن تكون مفيدة لاحقًا في الحصول على فرص عمل أو توجيهات مهنية. توفير فرص تدريبية (Internships) مع شركات معروفة. هذه التدريبات تمنحك خبرة عملية وتجهيزك لسوق العمل. وبالتأكيد إذا كنت ترغب في التعمق أكثر في مجال معين من علوم الحاسب أو البحث الأكاديمي، فإن الجامعة توفر لك الفرصة للالتحاق بالدراسات العليا (ماجستير، دكتوراه). لذلك حاول بقدر الإمكان الإلتحاق بجامعة متخصصة بعلوم الحاسوب ولكن في النهاية، الجامعة ليست الطريق الوحيد للنجاح في مجال البرمجة. وبالنسبة للمسار التعليمي بالتأكيد أنت على الطريق الصحيح، ومع الوقت والعمل الجاد، يمكنك الوصول إلى أهدافك بإذن الله.
  17. من خلال التحدث مع مركز المساعدة او مع الاستاذ إياد يمكنك معرفة متى يتم الحصول على الشهادة أو غيرها من الإستفسارات الخاصة بهذه المرحلة حيث يتم إفادتك بشكل أفضل ولكن في العموم يتم الحصول على الشهادة بعد قليل من الوقت وربما في بعض الأوقات تتأخر قليلاً نتيجة ضغط كبير على مركز المساعدة والإدارة لذلك يرجى التواصل مع مركز الساعدة وسيتم توضيح هذه الأمور لك .
  18. دورة تطوير التطبيقات باستخدام لغة Python هي في الأساس مخصصة لمجال ال backend لذلك سيتم دراسة أساسيات لغة python وأساسيات قواعد البيانات ثم تنتقل بعد ذلك لتعلم أساسيات إطار العمل جانغو Django أساسيات إطار العمل فلاسك Flask ثم بعد ذلك تنتقل للتطبيق العملي على هذه الأطر وبناء تطبيقات ويب باستخدام python بالإضافة للعديد من المهارات الأخرى ولذلك يفضل الإطلاع على الفيديو التالي حيث يشرح محتوى هذه الدورة بالتفصيل
  19. أولاً بالنسبة للشهادة الجامعية فيعتبر وحدها لا تكفي لضمان النجاح في سوق العمل، خاصةً في مجال البرمجة والتكنولوجيا. فالخبرة العملية والمهارات التطبيقية هي الأكثر أهمية ولكن مع الشهادة الجامعية يمكنك التقديم على العديد من الفرص والمنح المتاحه لك بسبب الشهادة. تركز البرامج الجامعية بشكل كبير على الأساسيات النظرية والمفاهيم الأكاديمية. في حين أن هذا مهم، إلا أن التطبيقات العملية والمشاريع الواقعية التي تُحاكي بيئة العمل تكون أقل تركيزًا. وسوق العمل يتطلب غالبًا خبرة عملية في تطوير المشاريع، واستخدام أدوات وتقنيات حديثة. لذلك يجب على الطلاب تطوير مهاراتهم بشكل مستمر. لذلك إختصاراً الشهادة الجامعية هي الأساس الذي تبني عليه مهاراتك. ولكن من المهم أن تكمل تعليمك الأكاديمي بتجربة عملية من خلال المشاريع الشخصية، التدريب العملي (internships)، والدورات التي تركز على التقنيات الحديثة. بهذه الطريقة، ستتمكن من سد الفجوة بين التعليم الأكاديمي ومتطلبات سوق العمل.
  20. كما أخبرك مصطفى في التعليق السابق فالشهادة في مجال علوم الحاسوب ليست بتلك الأهمية كما في مجالات أخرى ولكن لا يعني أن ال شهادة لا قيمة لها إطلاقاً . ومع ذلك بالنسبة للسؤال فأعتقد أنه لا يمكنك الدخول للكلية من خلال معهد حاسبات وإذا كنت تقصد بمعهد معتمد حاسبات فليس هناك حاجه لدخول كلية حاسبات فيعتبر المعهد مكافئ للكلية
  21. وعليكم السلام ورحمة الله وبركاته. ال argv هو قائمة تحتوي على المعاملات التي تم تمريرها إلى البرنامج عند تشغيله من سطر الأوامر. بمعنى عندما تقوم بتشغيل برنامج بايثون من سطر الأوامر، فإن sys.argv يحتوي على المعلومات التالية: العنصر الأول (sys.argv[0]) هو دائمًا اسم السكريبت نفسه. العناصر التالية هي المعاملات الإضافية التي تم تمريرها للبرنامج. على سبيل المثال، إذا قمت بتشغيل برنامج بهذا الشكل: python my_script.py arg1 arg2 arg3 فإن sys.argv ستحتوي على: sys.argv[0] == "my_script.py" sys.argv[1] == "arg1" sys.argv[2] == "arg2" sys.argv[3] == "arg3"
  22. كما شرؤح لك مصطفى بشكل رائع أن الدوال عديمة الاسم أو Anonymous Functions هي دوال تُعرّف بدون اسم محدد. بدلاً من أن يكون للدالة اسم يمكن استدعاؤها به لاحقاً، يتم استخدامها في المكان الذي تم تعريفها فيه. ولكن سأحاول شرح متى نستخدم الAnonymous Functions بشكل عملي أولاً تُستخدم هذه الدوال غالبًا في الأماكن التي تحتاج فيها إلى تمرير دالة كمعامل لدالة أخرى. على سبيل المثال، في المصفوفات عند استخدام map أو filter أو forEach. const numbers = [1, 2, 3, 4]; const squaredNumbers = numbers.map(function(num) { return num * num; }); console.log(squaredNumbers); // Output: [1, 4, 9, 16] ثانياً عندما تحتاج إلى دالة تؤدي مهمة معينة ولا تحتاج إلى تكرارها في أماكن أخرى. setTimeout(function() { console.log("Time's up!"); }, 2000); // يتم تنفيذ الدالة بعد 2 ثانية و أحيانًا تحتاج إلى دالة داخل دالة أخرى لأداء مهمة محددة في نطاق صغير. function outerFunction() { return function() { console.log("Inner function"); }; } const inner = outerFunction(); inner(); // "Inner function"
  23. ستتعلم في هذه الدورة تطوير تطبيقات الويب باستخدام إطار عمل جانغو Django و فلاسك Flask. بالإضافة إلى استخراج البيانات من صفحات الويب وتحليلها،والعديد من المهارات كما وضحها محمد في التعليق السابق . ولكن يجب عليك معرفة أنه في مجال تطوير الويب يوجد جزء خاص بال الـ backend (الواجهة الخلفية): وهو الجزء الذي يتعامل مع منطق التطبيق، مثل معالجة البيانات، والتفاعل مع قواعد البيانات، وإدارة المستخدمين. هذا هو الجزء الذي تبرمجه بلغة بايثون باستخدام إطاري العمل جانغو أو فلاسك كما في هذه الدورة . الـ frontend (الواجهة الأمامية): وهو الجزء الذي يراه المستخدم ويتفاعل معه مباشرة، مثل التصميم، والعناصر التفاعلية. عادة ما يتم برمجة الواجهة الأمامية بلغات مثل HTML و CSS و JavaScript. وبالنسبة لمجال تطوير تطبيقات الهاتف فلا تتطرق له هذه الدورة ويفضل الإطلاع على المقالة التالية قبل الإطلاع على المحتوى الدورة
  24. أولاً يجب معرفة أن TypeScript هو بمثابة امتداد لـ JavaScript وتضيف إليه ميزات مثل الأنواع (types) والواجهات (interfaces) والفئات (classes) التي تسهل البرمجة الكائنية التوجه. إذا كنت تعرف OOP مسبقًا، سيكون من الأسهل لك فهم واستخدام هذه الميزات. ويمكنك استخدام TypeScript لبناء تطبيقات تعتمد على البرمجة الوظيفية (functional programming) . ولذلك ليست هناك حاجة لاستخدام الفئات والوراثة إذا لم تكن تتطلبها متطلبات مشروعك. مع ذلك، يمكنك استخدام TypeScript بدون الاعتماد على OOP، واستخدامها فقط لتحديد الأنواع وإضافة الثباتية إلى الكود الخاص بك. لكن فهم OOP سيساعدك في كتابة كود أكثر تنظيمًا وقابلية لإعادة الاستخدام عموماً .
  25. إذا كان هذا السؤال خاص بأحد دروس الأكاديمية يرجى طرح الأسئلة أسفل الدرس وليس هنا في قسم الأسئلة البرمجة حيث نطرح الأسئلة العامة الغير متعلقة بمحتوى الدورة أو الدرس، وذلك لمساعدتك بشكل أفضل. أما إذا كان غير ذلك فحاول التأكد من أنك قمت بتثبيت المكتبة في البيئة الصحيحة عبر تشغيل الأمر التالي داخل الـ Terminal في Visual Studio Code pip show SpeechRecognition إذا لم يظهر أي معلومات حول المكتبة، فهذا يعني أنها لم تُثبت بنجاح وحاول تثبيتها مرة أخرى .
×
×
  • أضف...