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

Mustafa Suleiman

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

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

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

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

    303

أجوبة بواسطة Mustafa Suleiman

  1. يظهر خطأ ModuleNotFoundError: No module named 'setuptools.extern.six' حاول تثبيت الحزمة setuptools من خلال:

    pip install --upgrade setuptools pip

    ثم:

    pip install setuptools

    ثم حاول مجددًا:

    pip install -r requirements.txt

    وإن استمرت المشكلة حاول تثبيت الإعتماديات التالية:

    sudo apt-get install python3-dev python3-pip

    ثم:

    pip install wheel

    بعد ذلك حاول مجددًا.

    وإن استمرت المشكلة حاول تثبيت إصدار أحدث من numpy بتعديله في ملف requirements :

    numpy==1.22

     

  2. المشروع يتم تقديه لمركز المساعدة في أكاديمية حسوب وليس في قسم أسئلة البرمجة هنا.

    أرجو التواصل من خلال الرابط التالي:

    ومن الأفضل رفعه على GitHub بالإضافة إلى رفعه على استضافة لتوفير نسخة حية للعرض.

    بالتوفيق إن شاء الله.

  3. تعلم جافاسكريبت وReact سيضيف لك الكثير، وضمن الدورة يتم شرح ما يلي:

    • الأسس البرمجية السليمة للغة JavaScript
    • الإضافات الحديثة في نسخة ES6 من اللغة
    • تطوير تطبيقات الخادم باستخدام بيئة Node.js
    • أساسيات مكتبة React.js وبناء تطبيق ملاحظات باستخدامها
    • أساسيات مكتبة React Native و Expo
    • تطوير تطبيق جوال للوصل بين الأطباء والمرضى بالاعتماد على React Native
    • التعرف على التطبيقات التي تتطلب اتصالًا مستمرًا بين المتصفح والخادم
    • بناء تطبيق محادثة يشبه تطبيق WhatsApp
    • إنشاء تطبيق أسئلة وأجوبة ونقاشات مع تصيير من جهة الخادم Server-side Rendering عبر إطار العمل Next.js
    • بناء واجهات أمامية باستخدام React.js مع مكتبة Material-UI
    • إنشاء تطبيقات سطح مكتب باستخدام JavaScript باستخدام إطار العمل Electron.js
    • بناء تطبيق جوال لشبكة تواصل اجتماعي باستخدام إطار العمل Ionic ومكتبة React.js

    يمكنك تجاهل Node.js وNext.js وReact Native وIonic و Electron.js، وتعلم المسارات التالية فقط:

    • أساسيات لغة JavaScript
    • أساسيات React.js
    • تطبيق دردشة يشبه WhatsApp

    الدورة الثانية التي ستحقق منها استفادة هي دورة تطوير واجهات المستخدم، والتي ستتعلم بها ما يلي:

    • مفهوم الواجهة الأماميّة للموقع front-end وكيفية عملها.
    • أساسيات لغات تطوير واجهات المستخدم: HTML, CSS, JavaScript.
    • استخدام أحدث أدوات التطوير: Bootstrap, jQuery, Sass, Gulp.
    • التعامل مع خدمة استضافة المشاريع GitHub.
    • إعداد هيكل الموقع ووضع خطة العمل.
    • تطوير واجهة استخدام حقيقة لمتجر الكتروني كامل من الصفر.
    • تطوير موقع لشركة مع مدونة خاصة خطوة بخطوة.
    • بناء 5 صفحات هبوط مختلفة
    • بناء واجهة لموقع يشبه YouTube
    • بناء لوحة تحكم لتطبيق ويب

    وتلك الدورة أنت بحاجة إلى دراستها بالكامل من أجل تقوية مهاراتك في الواجهة الأمامية وإنشاء واجهة مستخدم جيدة، وذلك في حال أنك تريد ذلك أي تريد إنشاء تطبيق متكامل من حيث الواجهة الأمامية والخلفية، بينما لو كنت تريد التركيز على الواجهة الخلفية فقط فهي ليس مناسبة لك.

    ويمكنك استبدالها بدورة  علوم الحاسوب.

    • أعجبني 2
  4. بتاريخ 10 ساعة قال يوسف سعد3:

    ليش ما اكدر افتح حساب إعلاني وكيف هواي بيجات وشركات. مستمره بالإعلان داخل العراق 

    العراق ليست من ضمن الدول المدعومة لفتح حساب بيزنس في سناب شات، وتلك قائمة بالدول المدعومة:

    بالتأكيد يتم استخدام vpn لفتح الحساب أو شراء حساب من شخص يقدم تلك الخدمة، مع استخدام وسيلة دفع غير عراقية للإعلانات لتجنب غلق الحساب.

  5. على الأغلب،  لأن الملف الذي تحاول فتحه غير موجود، ففي السطر الذي قبله، تحاول فتح الملف "FileName" باستخدام وظيفة fstream::open(). إذا لم يكن الملف موجودًا، فسترجع الوظيفة false.

    في حال استمرت المشكلة أرفق الكود الكامل لتفقد المشكلة.

    • أعجبني 1
  6. ذلك يعني أنه حدث خطأ أُثناء عملية الرفع، هل يتم استخدام صورة بصيغة صحيحة مقبولة؟ مثل صيغة jpeg أو png؟

    حاولي تحديث الصفحة والتجربة مرة أخرى مع التأكد من صيغة الصورة وأيضًا التجربة من متصفح آخر إن استمرت المشكلة.

  7. لا يتم إرسال الواجبات في بداية الدورة بل بعد الإنتهاء منها او الإنتهاء من المسارات التي تريدها، حيث عند التقدم للإختبار سيتعين عليك تقديم التطبيقات التي قمت بها.

    قم بإنشاء مجلد للدورة ثم بداخل المجلد أنشيء مجلد لكل مسار وضع بكل مجلد التطبيقات العملية البسيطة. 

    ثم رفع ذلك المجلد بالكامل على مستودع GitHub.

    بينما المشاريع الكاملة نرفعها على مستودع خاص بها بشكل مستقل.

    وبخصوص تعلم GIT وGithub فأرجو قراءة التالي:

     

  8. الأمر ما زال مبكرًا لتقوم بذلك، ولا تقلق في وقتها ستعرف كيف يتم الأمر، لكن في البداية يجب تعلم أساسيات بايثون والتطبيق عليها من خلال مشاريع.

    ثم تعلم المكتبات الخاصة بالتعامل مع البيانات ثم تعلم الجبر الخطي، ثم تعلم مفاهيم الإحتمال والإحصاء ثم تعلم أساسيات تعلم الآلة ML، وستجد تفصيل أكثر هنا:

    وببساطة، يتم تدريب نموذج تعلم الآلة عن طريق إعطائه مجموعة بيانات كبيرة من المدخلات والمخرجات.

    ويتوفر العديد من المكتبات والأدوات المستخدمة في تدريب نماذج الذكاء الاصطناعي مثل:

    • TensorFlow
    • PyTorch
    • Keras
    • Scikit-learn

    ثم يقوم النموذج بتحليل البيانات وتحديد الأنماط والعلاقات بينها، باستخدام تلك الأنماط، يمكن للنموذج بعد ذلك إنشاء نموذج باستطاعته استخدام تلك العلاقات لتوقع الإخراج المناسب للمدخلات الجديدة.

    ويختلف وقت تدريب نموذج تعلم الآلة باختلاف حجم مجموعة البيانات ونوع النموذج المستخدم، وكقاعدة: كلما زاد حجم مجموعة البيانات، كلما زاد وقت التدريب، والأنواع الأكثر تعقيدًا من النماذج تتطلب وقتًا أطول للتدريب.

    وبالطبع لا يجب عليك إيقاف تشغيل الكمبيوتر أثناء تدريب نموذج تعلم الآلة، فسيؤدي ذلك إلى إيقاف عملية التدريب، وستحتاج إلى إعادة تشغيلها من البداية.

    وعند الحاجة إلى إيقاف تشغيل الكمبيوتر لفترة قصيرة، فيجب عليك التأكد من حفظ تقدم التدريب قبل إيقاف تشغيل الكمبيوتر.

    وبالطبع في حالة كانت البيانات كبيرة فستحتاج إلى قوة معالجة كبيرة وهنا من الأفضل استخدام Google Colab بدلاً من حاسوبك.

    وستجد تفصيل أكثر هنا:

     

    • أعجبني 1
  9. virtualenv هي ليست مكتبة، وببساطة الغرض من البيئة الإفتراضية هو إنشاء بيئات افتراضية منفصلة لمشاريع البرمجة المختلفة، أي تعمل تلك البيئات كمساحة معزولة لمشاريعك، مما يسمح لك بإدارة إصدارات Python والمكتبات الخاصة بك بشكل مستقل لكل مشروع.

    ونستخدم البيئة الافتراضية في جميع أنواع المشاريع، سواء كانت صغيرة أو كبيرة ومع إطار عمل أو مكتبة معينة.

    ولا يوجد فرق بين استخدام البيئة الافتراضية لمشروع ويب أو مشروع في مجال تعلم الآلة، في كلتا الحالتين، توفر البيئة الافتراضية فوائد مماثلة، مثل العزل والتحكم في إصدارات Python والمكتبات.

    وبخصوص إنشاء البيئة الإفتراضية ستجد تفصيل هنا:

     

    • أعجبني 1
  10. الأمر بسيط، تستطيع إنشاء حساب جديد من خلال رقم هاتف جديد، وكل ما أنت بحاجة إليه هو شراء شريحة الهاتف من شركة الإتصالات التي تفضلها في بلدك.

    ثم استخدام أحد التطبيقات التي توفر لك استخدام أكثر من تطبيق واتساب في نفس الوقت من أجل استخدام الرقمين معًا إذا أردت.

  11. عليك أولاً تثبيت Jupyter  من خلال:

    pip install jupyter

    ثم إنشاء ملف بصيغة:

    .ipynb

    ثم الضغط على kernel أعلى اليمين:

    native-kernel-picker.thumb.png.a81867b81df2c95e573a801f733b4b8a.png

    وبعد إختيار الـ kernel قم بكتابة الكود الذي تريده في الملف ثم اضغط على CTRL + ENTER لتشغيل الخلية في Jupyter أو بالضغط على زر التشغيل بجانبها:

    native-code-cells-03.thumb.png.3d5ad2763e1df326f34b5d8df02b24b1.png

    ويمكنك تشغيل جميع الخلايا من خلال Run All:

    native-code-runs.thumb.png.985c15c7358dd24773cc9a593f8c9a7f.png

    وتستطيع إضافة خلايا من خلال +code بالأعلى.

  12. عليك إنشاء مشروع Flask إذا لم تقم بذلك بالفعل وفي ملف app.py قم بإضافة التالي حيث سنقوم بإنشاء مسار ثم تعيين القالب الذي سيتم عرضه:

    from flask import Flask, render_template
    
    app = Flask(__name__)
    
    @app.route('/')
    def index():
        return render_template('index.html')
    
    if __name__ == '__main__':
        app.run(debug=True)

    ثم إنشاء ملف HTML داخل مجلد المشروع حيث يجب وضع الملف في مجلد يسمى "templates" لأن Flask يفترض أن تكون ملفات HTML مخزنة في ذلك المجلد، وتستطيع تسمية الملف كما تشاء، ولكن هنا ، سنسميه "index.html".

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Flask App</title>
    </head>
    <body>
        <h1>Hello, Flask!</h1>
    </body>
    </html>

    قم بتشغيل المشروع من خلال:

    set FLASK_APP=app.py

    ثم:

    flask run

    وتصفح المسار:

    http://127.0.0.1:5000/

    وستجد تفصيل أكثر هنا:

     

  13. بالطبع، فهياكل البيانات عبارة عن طريقة لتنظيم البيانات في الذاكرة، وتسمح هياكل البيانات للبرامج بالوصول إلى البيانات ومعالجتها بكفاءة أكبر.

    dict في بايثون عبارة عن هيكل بيانات يربط بين مفتاحين (keys) وقيمتين (values)، ومتاح أن يكون المفتاح من أي نوع بيانات قابل للتسلسل، مثل الأرقام أو السلاسل أو الكائنات، وأن تكون القيمة من أي نوع بيانات.

     

    • أعجبني 1
  14. دائمًا هناك تخبط ما بين الحفظ والاستيعاب في بداية تعلم البرمجة وذلك أمر طبيعي جدًا، ويراودك سؤال هل أترك الحفظ وأكتفي بالاستيعاب أم أجمع بينهم وأقوم بحفظ كل شيء؟

    وفي الواقع العملي لا يوجد مبرمج يحفظ كل شيء، بل يتم حفظ ما تقوم باستخدامه بشكل متكرر نتيجة التكرار، والباقي أنت مستوعب لطريقة عمله وتستطيع استخدامه في أي وقت وبحاجة فقط إلى البحث عن طريقة الكتابة أي الـ Syntax لتتذكرها لكنك قادر على كتابة الكود مباشرًة بعد البحث لأنك مستوعب لما تقوم بالبحث عنه.

    وفي بداية التعلم يجب إقران الحفظ بالاستيعاب، فالحفظ جزء من عملية التعلم، بعد ذلك ستنسى بعض الأشياء لا مشكلة لكن بشرط أن تكون قد قمت باستخدامها في مشاريع وطبقت عليها واستوعبتها جيدًا، وتستطيع البحث عنها متى شئت.

     

  15. إحدى الطرق هي زيارة موقع الويب الرسمي لشركة جوجل ديب ماين، والذي يسرد جميع الأوراق العلمية المنشورة من قبل الشركة، أيضًا الاشتراك في النشرة الإخبارية الخاصة بشركة جوجل ديب ماين، والتي ستتلقى من خلالها إشعارات بأحدث الأوراق العلمية المنشورة.

    واستخدام محركات البحث العلمية، مثل Google Scholar، للعثور على الأوراق العلمية في مجال الذكاء الاصطناعي جوجل ديب ماين، بالبحث عن الأوراق العلمية باستخدام الكلمات الرئيسية ذات الصلة، مثل "ذكاء اصطناعي" أو "غوغل ديب ماين".

    وتابع أيضًا المواقع التالية:

    • موقع ويب Google AI يسرد  جميع الأوراق العلمية المنشورة من قبل شركة Google AI، بما في ذلك تلك المتعلقة بـ Google DeepMind.
    • arXiv مستودع مفتوح الوصول للأوراق العلمية في العلوم والتكنولوجيا، ويحتوي على قسم خاص للأوراق العلمية في مجال الذكاء الاصطناعي، بما في ذلك تلك المتعلقة بـ Google DeepMind.
    • PubMed Central  مستودع مفتوح الوصول للأوراق العلمية في مجال الطب والعلوم الصحية، وبه قسم خاص للأوراق العلمية في مجال الذكاء الاصطناعي، بما في ذلك تلك المتعلقة بـ Google DeepMind.
    • أعجبني 1
  16. ما قمت به ممتاز جدًا بالفعل، لا حاجة الآن لتعلم Typescript بل عليك تعلم التقنيات المطلوبة بالنسبة لمطور واجهة أمامية يعمل بـ React، ويتبقى لك تعلم Next.js ثم مكتبة Tailwind.css.

    بعدها تستطيع التقدم لوظائف مطور Frond-End أو React developer. 

    • شكرًا 1
  17. بتاريخ 9 ساعة قال Rayan Alsousou:

    SQL 3.htmlSQL 3.htmlالسلام عليكم

    أنا اريد أن اتحقق من البيانات و ليس اضافتها، سأرفق الملف الذي قمت بالعمل عليه على أمل أن تساعدوني في حل المشكلة

    قمت بالعمل عليه في visual studio code*

    الجزء الخاص بعملية التحقق لديك هو الدالة validateLogin ونقوم أولاً بالتحقق من أن المستخدم قام بإدخال بيانات بالفعل وليس حقول فارغة ثم نرسل تلك البيانات للخادم للتحقق من وجود المستخدم وإن تم إيجاده يتم السماح له بتسجيل الدخول:

    <script>
      const validateLogin = async () => {
        const username = document.getElementById('username').value;
        const password = document.getElementById('password').value;
        const messageElement = document.getElementById('message');
    
        if (username.trim() === '' || password.trim() === '') {
          messageElement.textContent = 'Please enter both username and password.';
          return;
        }
    
        try {
          const userExists = await checkLoginInfo(username);
          if (userExists) {
            messageElement.textContent = 'Login successful!';
          } else {
            messageElement.textContent = 'Invalid username or password.';
          }
        } catch (error) {
          console.error('An error occurred:', error.message);
          messageElement.textContent = error.message;
        }
      };
    
      const checkLoginInfo = async (username) => {
        const response = await fetch('localhost:3000/login', {
          method: 'POST',
          headers: {
            'Content-Type': 'application/json',
          },
          body: JSON.stringify({ username }),
        });
    
        if (!response.ok) {
          throw new Error('Network response was not ok');
        }
    
        const data = await response.json();
        return data.userExists;
      };
    </script>

    بالطبع من جهة الخادم عليك معالجة الطلب الذي تم إرساله وإرجاع قيمة userExists سواء false أو true، أي في جهة الخادم نقوم بإنشاء مسار login ثم نقوم بمعالجة البيانات التي تم إرسالها وتفقد هل هي موجودة لدينا في قاعدة البيانات أم لا، ثم نرسل الرد بالإيجاب أو السلب.

×
×
  • أضف...