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

Mustafa Suleiman

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

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

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

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

    303

كل منشورات العضو Mustafa Suleiman

  1. عليك إنشاء مشروع 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/ وستجد تفصيل أكثر هنا:
  2. بالطبع، فهياكل البيانات عبارة عن طريقة لتنظيم البيانات في الذاكرة، وتسمح هياكل البيانات للبرامج بالوصول إلى البيانات ومعالجتها بكفاءة أكبر. dict في بايثون عبارة عن هيكل بيانات يربط بين مفتاحين (keys) وقيمتين (values)، ومتاح أن يكون المفتاح من أي نوع بيانات قابل للتسلسل، مثل الأرقام أو السلاسل أو الكائنات، وأن تكون القيمة من أي نوع بيانات.
  3. دائمًا هناك تخبط ما بين الحفظ والاستيعاب في بداية تعلم البرمجة وذلك أمر طبيعي جدًا، ويراودك سؤال هل أترك الحفظ وأكتفي بالاستيعاب أم أجمع بينهم وأقوم بحفظ كل شيء؟ وفي الواقع العملي لا يوجد مبرمج يحفظ كل شيء، بل يتم حفظ ما تقوم باستخدامه بشكل متكرر نتيجة التكرار، والباقي أنت مستوعب لطريقة عمله وتستطيع استخدامه في أي وقت وبحاجة فقط إلى البحث عن طريقة الكتابة أي الـ Syntax لتتذكرها لكنك قادر على كتابة الكود مباشرًة بعد البحث لأنك مستوعب لما تقوم بالبحث عنه. وفي بداية التعلم يجب إقران الحفظ بالاستيعاب، فالحفظ جزء من عملية التعلم، بعد ذلك ستنسى بعض الأشياء لا مشكلة لكن بشرط أن تكون قد قمت باستخدامها في مشاريع وطبقت عليها واستوعبتها جيدًا، وتستطيع البحث عنها متى شئت.
  4. إحدى الطرق هي زيارة موقع الويب الرسمي لشركة جوجل ديب ماين، والذي يسرد جميع الأوراق العلمية المنشورة من قبل الشركة، أيضًا الاشتراك في النشرة الإخبارية الخاصة بشركة جوجل ديب ماين، والتي ستتلقى من خلالها إشعارات بأحدث الأوراق العلمية المنشورة. واستخدام محركات البحث العلمية، مثل Google Scholar، للعثور على الأوراق العلمية في مجال الذكاء الاصطناعي جوجل ديب ماين، بالبحث عن الأوراق العلمية باستخدام الكلمات الرئيسية ذات الصلة، مثل "ذكاء اصطناعي" أو "غوغل ديب ماين". وتابع أيضًا المواقع التالية: موقع ويب Google AI يسرد جميع الأوراق العلمية المنشورة من قبل شركة Google AI، بما في ذلك تلك المتعلقة بـ Google DeepMind. arXiv مستودع مفتوح الوصول للأوراق العلمية في العلوم والتكنولوجيا، ويحتوي على قسم خاص للأوراق العلمية في مجال الذكاء الاصطناعي، بما في ذلك تلك المتعلقة بـ Google DeepMind. PubMed Central مستودع مفتوح الوصول للأوراق العلمية في مجال الطب والعلوم الصحية، وبه قسم خاص للأوراق العلمية في مجال الذكاء الاصطناعي، بما في ذلك تلك المتعلقة بـ Google DeepMind.
  5. أرجو توضيح السؤال يا مروان، هل المقصود حفظ كل ما بالإطار؟
  6. ما قمت به ممتاز جدًا بالفعل، لا حاجة الآن لتعلم Typescript بل عليك تعلم التقنيات المطلوبة بالنسبة لمطور واجهة أمامية يعمل بـ React، ويتبقى لك تعلم Next.js ثم مكتبة Tailwind.css. بعدها تستطيع التقدم لوظائف مطور Frond-End أو React developer.
  7. الجزء الخاص بعملية التحقق لديك هو الدالة 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 ثم نقوم بمعالجة البيانات التي تم إرسالها وتفقد هل هي موجودة لدينا في قاعدة البيانات أم لا، ثم نرسل الرد بالإيجاب أو السلب.
  8. في حال قمت بتسجيل الدخول بالإيميل الذي اشتركت من خلاله، أرجو التواصل مع مركز المساعدة وسيتم حل المشكلة لديك.
  9. بعد تسجيل الدخول إلى حسابك في أكاديمية حسوب باستخدام البريد الإلكتروني الذي اشتركت من خلاله في الدورة، ستلاحظ إضافة أيقونة جديدة في الشريط العلوي للموقع باسم "دوراتي"، يمكنك الضغط عليها للوصول إلى الدورات التي اشتركتَ بها.
  10. إذن أنت بحاجة إلى استخدام بيئة Node.js حيث ستقوم بالتالي: تثبيت Node.js على جهازك. إنشاء المشروع من خلال أمر npm init - y ثم تثبيت المكتبات اللازمة وهما express و sqlite3 حيث sqlite3 توفر لنا الإتصال بقاعدة بيانات sqlite والتعامل معها. ثم من المفترض أن تقوم بكتابة المنطق الخاص بعملية تسجيل حساب جديد في الموقع لديك حيث ستقوم بإرسال البيانات التي أدخلها المستخدم في النموذج form إلى خادم Node.js لديك عن طريق رابط الـ API ومعالجة تلك البيانات بتخزينها في قاعدة البيانات. ثم بعد ذلك عندما يتوجه المستخدم لصفحة تسجيل الدخول نقوم بمطاقة البيانات التي سيقوم بإدخالها مع البيانات المخزنة لدينا ثم نسمح له بتصفح الموقع.
  11. عليك التوضيح هل تريد الربط من خلال جافاسكريبت أن من خلال بايثون في حال أنك تستخدم Flask أو جانغو
  12. استخدام منفذ الأوامر هو أمر أساسي لك كمبرمج، حيث ستقوم من خلاله بتنفيذ الكثير من الأمور مثل تثبيت الحزم وتحديثها أو حذفها وإنشاء البيئة الإفتراضية وإنشاء مشروع عندما تتعلم Flask وDjango وغيرها من الأمور التي ستتعلمها أثناء تعلم البرمجة مثل رفع المشروع إلى GitHub. لذا عليك الإعتياد على التيرمنال وتخطي الشعور بالقلق عند التعامل مع الشاشة السوداء الخاصة به. وعامًة يمكنك استخدام منفذ الأوامر خلال vscode بالضغط على terminal من القائمة بالأعلى ثم اختر new terminal وهناك إختصار لفتحه وهو CTRL + ` حيث ` هو حرف ذ بالكيبورد لكن عندما تكون اللوحة باللغة الإنجليزية. وفي باقي الدورة سيتم استخدام pycharm وتستطيع استخدام vsocde إذا أردت
  13. ما فهمته هو أن لديك صفحة HTML تحتوي على نموذج (form) وثلاثة عناصر select، حيث يحتوي كل select على ثلاثة اختيارات، وعند اختيار أي اختيار في ال select، أريد أن يتم تعطيل ذلك الاختيار في ال select الباقي تلقائيًا. ويتم الأمر كالتالي: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Unique Selection</title> </head> <body> <form> <select id="select1" onchange="handleSelectChange(1)"> <option value="">Select an option</option> <option value="option1">Option 1</option> <option value="option2">Option 2</option> <option value="option3">Option 3</option> </select> <select id="select2" onchange="handleSelectChange(2)"> <option value="">Select an option</option> <option value="option1">Option 1</option> <option value="option2">Option 2</option> <option value="option3">Option 3</option> </select> <select id="select3" onchange="handleSelectChange(3)"> <option value="">Select an option</option> <option value="option1">Option 1</option> <option value="option2">Option 2</option> <option value="option3">Option 3</option> </select> </form> <script> function handleSelectChange(selectedIndex) { const selectedOption = document.getElementById(`select${selectedIndex}`).value; for (let i = 1; i <= 3; i++) { if (i !== selectedIndex) { const selectElement = document.getElementById(`select${i}`); for (let j = 0; j < selectElement.options.length; j++) { const option = selectElement.options[j]; if (option.value === selectedOption || selectedOption === "") { option.disabled = true; } else { option.disabled = false; } } } } } </script> </body> </html>
  14. ما هي اللغة التي تحاولين الحل من خلالها؟
  15. بشكل مختصر، تحتاج إلى إنشاء حساب مطور سواء على آبل أو جوجل من أجل التمكن من رفع تطبيقك احبث عن create google play developer account و create Apple developer account. وبعد إنشاء الحساب، تستطيع رفع تطبيقك من لوحة التحكم، فمثلاً في Google play console تستطيع الضغط على Create app ثم نختار setup app لتهيئة إعدادات التطبيق الذي نريد رفعه من معلومات وإعدادات حسب ما تريد ورفع صور وروابط. بعدها نضغط على publish your app ثم من production نختر الدول التي تريد نشر تطبيقك بها، ثم من release نختر create new release وعليك الآن رفع تطبيقك إما بصيغة APK أو bundle بصيغة .aab أما بخصوص الواجهة الخلفية فيجب رفعها بالطبع على منصة مخصصة لذلك والتواصل معها عبر API من خلال تطبيقك
  16. أرجو منك التعليق أسفل فيديو الدورة الذي تريد تمارين للتطبيق علي ما جاء به، وسيتم توفيرها لك، وفي سؤالك أرجو ذكر نوعية التمارين التي تريدها وما الذي تريد التطبيق عليه.
  17. في السعودية، وتستطيع تفقد الموعد من خلال الموقع الذي ذكرته
  18. عليك استخدام محرر للأكواد مثل برنامج vscode وتستطيع تحميله من هنا: https://code.visualstudio.com/sha/download?build=stable&os=win32-x64-user ومن خلال تستطيع فتح مجلد المشروع الذي ستقوم بإنشائه من خلال الخطوات المذكورة في التعليق السابق. ولفتح مجلد مشروع نقوم بالضغط على File من الأعلى ثم نختر Open Folder ثم اختر مجلد المشروع الخاص بـ Django.
  19. برنامج تعليمي مدته تسعة أشهر يهدف إلى تدريب الطلاب على تطوير تطبيقات iOS و macOS و iPadOS و watchOS و tvOS، وتم إطلاقه في عام 2021، ويتوفر حاليًا في 12 دولة حول العالم، بما في ذلك المملكة العربية السعودية. وهي ليست للإناث فقط، بل لجميع الطلاب الذين لديهم اهتمام بتطوير التطبيقات، وأتفهم سؤالك حيث في الدفعة الأولى من البرنامج في المملكة العربية السعودية، كان 90% من الطلاب من الإناث. وللمشاركة في أكاديمية آبل للمطورين، يجب عليك: أن تكون طالبًا جامعيًا أو خريجًا في أي مجال. أن تجيد اللغة الإنجليزية. أن تمتلك معرفة أساسية بالبرمجة. أن تكون قادرًا على العمل بشكل مستقل وجماعي. وباستطاعتك تقديم طلبك للالتحاق بالأكاديمية عبر الإنترنت، وتُتاح عملية التقديم عادةً في شهر سبتمبر من كل عام. قم بزيارة موقع أكاديمية آبل للمطورين. انقر فوق "التسجيل". أدخل معلوماتك الشخصية، مثل اسمك وعنوانك وبريدك الإلكتروني. أكمل طلبك، بما في ذلك أسباب رغبتك في الانضمام إلى الأكاديمية. تحميل سيرتك الذاتية وخطاب التحفيز. سيتم مراجعة طلبك من قبل لجنة القبول، وإن تم قبولك، فستتلقى دعوة للحضور إلى مقابلة شخصية. إذا تم قبولك في الأكاديمية، فستحصل على تدريب مكثف في تطوير تطبيقات آبل، وستتعلم كيفية استخدام أدوات وتقنيات آبل، كما ستحصل على الفرصة للعمل على مشاريع حقيقية مع طلاب آخرين. وعند الانتهاء من البرنامج، ستحصل على شهادة من آبل. ستساعدك هذه الشهادة على تطوير حياتك المهنية في مجال تطوير تطبيقات آبل.
  20. i += 2 ليس عبارة تعبيرية صالحة داخل حلقة for، فتعبيرات الحلقة يجب أن تكون عبارة قابلة للتقييم، مثل i + 2 أو i * 2. أي كالتالي: for i in range(2 , 10): print(i + 2) أو كالتالي: for i in range(2 , 10): i += 2 print(i) أو كالتالي: for i in range(2 , 10): x = 0 x += i print(x ) أي عليك تعيين قيمة جديدة لـ i وزيادة قيمتها في نفس الوقت.
  21. تقصد التحقق مما إذا كان الرقم X قابل للقسمة على 3 أو 5؟ يتم الأمر بتفقد هل باقي القسمة هو 0 أم لا؟ مثال: # الرقم الذي تريد التحقق منه X = 15 # التحقق من قابلية الرقم للقسمة على 3 أو 5 if X % 3 == 0: print(f"{X} قابل للقسمة على 3") elif X % 5 == 0: print(f"{X} قابل للقسمة على 5") else: print(f"{X} غير قابل للقسمة على 3 أو 5") لاحظ استخدام مشغل % وهو المشغل الخاص بباقي القسمة remainder.
  22. أنماط التصميم أو Design patterns ببساطة هي حلول نموذجية لمشاكل متكررة في تصميم البرمجيات، والغرض منها إنشاء برامج أكثر قابلية للصيانة والتوسع وإعادة الاستخدام. وتستطيع تعلم أنماط التصميم متى تريد ومن الأفضل الإطلاع عليها فقط في البداية، لكن لن تعني لك شيء حيث لن تستطيع توظيفها بدون خبرة، فهي مفيدة في المشاريع الكبيرة والمعقدة أو عندما يقابلك مشكلة في مشروع متوسط تعمل عليه لها نمط تصميم، لكن الخبرة لن تأتي من أول مشروع أو حتى اثنان بل بعد مرور فترة وعدّة مشاريع وحل مشاكل برمجية كثيرة ستواجهك في المشاريع. عندها تستطيع تعلم أنماط التصميم، من أجل تحسين مستواك كمبرمج وتحسين مستوى الكود الذي تقوم بتصميمه وكتابته. وما ستحتاجه فقط هو نمط Model-View-Controller (MVC) فهو الأكثر استخدامًا وستحتاجه في العمل، أما باقي الأنماط فتستطيع تعلمها بعد مرور فترة وإنهائك أكثر من مشروع، وقد لا تحتاج إليها. وستجد تفصيل أكثر هنا:
  23. بخصوص عالمنا العربي فيتم استخدام مكتبة React مع إطار Next.js بنسبة أكبر سواء في الشركات أو العمل الحر، يأتي بعد ذلك استخدام إطار Angular.js في الشركات أيضًا، ثم يأتي إطار Vue.js. لمعرفة المطلوب في سوق العمل لديك ومستوى الخبرة المطلوب، عليك بتفقد منصات التوظيف مثل LinkedIn وIndeed وغيرهم، وبالنسبة للعمل الحر تفقد منصة مستقل وخمسات وأيضًا منصة بعيد. وبالطبع ما تم ذكره أفضل من jQuery بمراحل، لكن الأخيرة كان يتم استخدامها بكثرة في المشاريع سابقًا لذا عند العمل على تطوير مشاريع تم تطويرها منذ فترة سيتعين عليك التعامل مع jQuery.
  24. تقصد تفعيل حساب حسوب من خلال الرابط التالي من أجل حسابك على مستقل؟ https://accounts.hsoub.com/settings في حال لم يتم التفعيل عليك التحدث لمركز المساعدة بمستقل.
×
×
  • أضف...