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

Kais Hasan

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

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

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

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

    24

كل منشورات العضو Kais Hasan

  1. يمكنك قراءة كل ملف في البداية و تخزين الملفات في لائحة، لقراءة ملف يمكنك كتابة ما يلي: from openpyxl import load_workbook wb = load_workbook('name.xlsx') ثم يجب عليك الانتقال إلى sheet ضمن هذه الملفات، يجب أن تعرف اسم ال sheet الذي يجب أن تنتقل إليه، يمكنك الحصول على أسماء ال sheets و من ثم الانتقال إلى أحدها كما يلي: print(wb.sheetnames) # ['sheet1', 'sheet2'] ws = wb['sheet1'] ثم يمكنك الوصول إلى قيمة معينة كما يلي: ws.cell(row=1, column=1).value و بالتالي بناء على التعليمات السابقة يجب عليك في البداية الحصول على لائحة من ال sheets التي ترغب في العمل عليها، ثم القيام بالمرور على كافة العناصر ضمن كل sheet للبحث عما تريد.
  2. قد يكون الخطأ في الكود الخاص بك. ﻷن الخطوات التي ذكرتها هي الخطوات التي تم ذكرها في الموقع الرسمي.
  3. في البداية عليك رفع الموقع الخاص بك على github أو أي موقع آخر مماثل. نقوم بعدها بالتسجيل في الموقع في حال لم تسجل حساب بعد، ثم نضغط على new و نختار web service. نقوم بالربط مع ال github ثم نقوم بوضع الخيارات التالية كما يلي: هذه الخطوات هي المطلوبة للقيام بذلك.
  4. يتم تطوير الدروس بشكل مستمر و إضافة مفاهيم جديدة، و لكن بشكل أساسي أصعب خطوة دائماً هي أول خطوة. بعد تعلم الأساسيات يفترض أن تكون قادراً على البحث و تعلم كافة الأشياء الباقية، حيث أنه لا توجد دورة في العالم يمكنها تغطية كافة المفاهيم في لغة ما أو في إطار عمل ما، و لكن المهم هو تقديم المفاهيم الأساسية التي تمكن الطالب من فهمها و البحث و حل المشاكل فيها. بالإضافة إلى ذلك أكاديمية حسوب تقدم الدعم المستمر عن طريق الأسئلة التي سنكون سعيدين بالإجابة عليها مباشرة، يمكنك السؤال دائماً عما تريد و سنساعدك.
  5. بشكل عام و بغض النظر عن لغة البرمجة التي تقوم باستعمالها، يقوم أي موقع شهير يريد من الآخرين صنع إضافات له أو تضمينه بشكل ما في مشروعهم بتعريف ما يدعى بال api و هي تساعدنا على التخاطب مع هذا الموقع بطريقة معرفة من قبل الموقع نفسه. يمكنك في أي لغة برمجة إرسال طلب إلى أحد النهايات لهذه ال api للحصول على المعلومات التي ترغب بها أو طلب تعديل معلومات موجودة مسبقاً، يمكنك الإطلاع على ال api الخاص بال instagram من هنا. بشكل عام تكون الخطوات للقيام بذلك هي: القيام بالتسجيل في الموقع كمطور و الحصول على ما يسمى api key، كل موقع يعرف هذه العملية بطريقة، و لكنها سهلة يمكنك فتح الرابط الذي أرفقته مسبقاً و ستجدها مثل عملية التسجيل في أي موقع. كتابة الكود الذي يقوم بالاتصال بال api مرسلاً إليها الطلبات بعد توثيق ال api key، أي نقوم بتضمينه في الكود الخاص بنا، أيضاً هناك مثال في الرابط السابق.
  6. إن ما تحاول تنزيله هو مجرد إضافات كما هو الحال في ال vscode، الإضافات لا تعني أن البيئة الخاصة باللغة أصبحت لديك، إنها فقط أدوات مساعدة. يجب عليك تنزيل المكتبات الخاصة باللغات التي تريدها من سطر الأوامر الخاص بالبرنامج، مثلاً يمكنك تنزيل dart عن طريق كتابة ما يلي: pkg install dart و هكذا من أجل بقية المكتبات التي تريدها، بالطبع كل مكتبة لها طريقة تنزيل، و لكن الفكرة هي قم بتنزيل المكتبات من سطر الأوامر. إن ال VHEditor يستعمل ما يسمى ب termux و لذلك عليك إيجاد تعليمة التنزيل المناسبة لما تريد بناء على ذلك.
  7. من فضلك قومي بمحاولة حل التمارين السابقة لوحدك و ذكر محاولاتك و ما الأخطاء التي حدثت معك، إن إعطاءك الحل بشكل مباشرة لن يساهم في تحسين مهاراتك البرمجية و لن يعود عليك بأي فائدة تذكر. إن التمرين السابقة تحتاج مفاهيم بسيطة في الماتلاب و هي العمليات الحسابية و التي بشكل عام تكون متماثلة في كل لغات البرمجة، بالإضافة إلى بضع توابع جاهزة توفرها الماتلاب. بالإضافة لما سبق تحتاجين إلى معرفة المعادلات التي تم ذكرها، في حال لم تكوني على دراية بهذه المعادلات يمكنك الحصول عليها ببحث صغير في غوغل.
  8. من فضلك قم بمحاولة حل التمرين لوحدك، اذكر محاولاتك لحل التمرين و ما الأخطاء التي حدثت معك و يمكننا مساعدتك، لكن إعطاءك الحل مباشرة لن يساهم في تحسين مهاراتك البرمجية و لن يعود عليك بأي فائدة. إن هذه التمارين تحتاج إلى بضع أفكار أساسية في بايثون فقط، و هي العبارات الشرطية، الحلقات التكرارية و العمليات الحسابية. بالإضافة إلى مفهوم واحد أصعب بقليل و هو كيفية معالجة الأخطاء التي تحدث أثناء التنفيذ. في حال لم تكن على دراية بما سبق يمكنك الإطلاع على مقالات أكاديمية حسوب فهي تحوي على شرح لكافة هذه الأمور.
  9. من فضلك قم بمحاولة حل التمرين لوحدك و ذكر ما قمت به من محاولات و سنساعدك في حال كان لديك بعض الأخطاء، إعطاءك الحل مباشرة لن يساهم في تطوير مهاراتك البرمجية و لن يعود عليك بالفائدة. إن التمرين يحتاج فقط بضع مفاهيم بسيطة في بايثون و هي كيف تقوم بعمليات الإدخال و الإخراج، بالإضافة إلى العمليات الحسابية، إن هذه المفاهيم هي أساسيات في بايثون، يمكنك الإطلاع على مقالات أكاديمية حسوب في حال لم تكن على إطلاع عليها.
  10. إن إعطاءك الجواب بشكل مباشر لن يحسن من مهاراتك البرمجية و لن يعود عليك بأي فائدة، من فضلك قم بمحاولة حل التمرين و يمكننا مساعدتك في حال حدوث خطأ معك أو في حال كانت هناك فكرة لم تفهمها. بشكل عام لن تحتاج إلى مفاهيم معقدة لحل هذا التمرين، تريد فقط مفهوم العبارات الشرطية و الحلقات التكرارية، يمكنك الإطلاع على هذه المفاهيم في حال لم تكن على إطلاع عليها عبر مقالات أكاديمية حسوب. ستحتاج فقط إلى بضع متغيرات تقوم بتخزين بعض القيم فيها لحل هذا التمرين.
  11. في حال كنت تريد تعلم البايثون في البداية فإن دورة البايثون المقدمة من أكاديمية حسوب تفي بهذا الغرض، و ستجعلك ملماً بمختلف نواحي اللغة. في حال كان لديك إطلاع على لغة البايثون، فيمكنك الإطلاع على مقالات الأكاديمية في الوقت الحالي، و قد يتم إضافة دورة لاحقاً بهذا الخصوص.
  12. من أهم المهارات هي المهارات المنطقية، عليك أن تتقن مهارة ال problem solving، هذه المهارة مهمة لمختلف المبرمجين و لكن بشكل أكثر لل back end developers، يمكنك تنمية هذه المهارة عن طريق حل المشكلات البرمجية على مواقع مثل HackerEarth و CodeForces و غيرهم من هذه المواقع. من المهارات المهمة أيضاً هي القدرة على التعامل مع قواعد البيانات بشكل جيد، و أن تكون على دراية جيدة بهذا المجال، فجزء كبير من عملك سيكون مع قواعد البيانات، عليك الإلمام بمختلف الأنواع مثل ال relational, NoSQL, GRAPH . من الجيد أن يكون لديك خبرة في التعامل مع سطر الأوامر خاصة على أنظمة linux حيث أن أغلب السيرفرات تعمل على linux. إن أكاديمية حسوب تقدم دورات تغطي هذه المفاهيم كلها، يمكنك الإطلاع عليها.
  13. يمكنك إيقاف السيرفر الذي قمت بتشغليه عن طريق الضغط على ctrl+c ثم القيام بكتابة npm start. كما يمكنك في حال تريد أن يتم تحديث الصفحة بشكل تلقائي، أن تقوم بكتابة ملف .env و تضع فيه الخيار التالي: CHOKIDAR_USEPOLLING=true
  14. لا يمكنك اعتبار تقنية أفضل من تقنية، حيث أن كلاهما يمكن استعماله لبناء ال backend لموقع، كل منهما له طرقه و لكن بشكل عام المفاهيم تبقى نفسها، هناك بعض الفروق البسيطة التي يمكن أن تشكل فرقاً مهماً في بعض الحالات للمواقع الكبيرة و هي كما يلي: ال php تعتبر لغة متزامنة على عكس ال node.js التي تعتبر غير متزامنة. ال node.js مقادة بالأحداث، حيث أن أغلب العمل يتم على أحداث يتم الانتظار حتى حدوثها. من ناحية قواعد البيانات فإن ال php تعتبر أبطئ مع ال NoSQL على عكس ال node.js. ال node.js هي لغة مترجمة على عكس ال php التي تعتبر مفسرة.
  15. يمكنك القيام بذلك عن طريق تعريف أكثر من نمط من المستخدمين و إعطاء هؤلاء المستخدمين الصلاحيات المناسبة، يمكن إعطاء الصلاحيات على مستوى مجموعات في حال كان هناك أكثر من أدمن في كل قسم حيث أن ذلك يلغي التكرار. يمكنك الإطلاع على كيفية القيام بذلك من هنا.
  16. من فضلك قم بتوضيح السؤال بشكل أدق، و قم بذكر محاولاتك لحل المطلوب، يمكننا هنا مساعدتك في حال حدوث خطأ معك و لكن لا يمكننا حل السؤال لك، فهذا لا يحسن من مهاراتك البرمجية.
  17. من فضلك قم بذكر محاولاتك حتى يمكننا مساعدتك في حال وجود أخطاء لديك، إعطاءك الحل مباشرة لن يساهم في تطوير مهاراتك البرمجية. سأساعدك من ناحية الأفكار المطلوبة لإنجاز ما قمت بذكره. في البداية نريد مفهوم الحلقات و ذلك ﻷننا نريد التنفيذ أكثر من مرة (أتوقع هذا في حال كنت لا تريد تنفيذ اللعبة أكثر من مرة لا داعي للحلقات). نريد أيضاً الإدخال و الإخراج، أعتقد أن هذا الأمر بسيط و يمكنك البحث عن كيفية القيام بذلك. نحتاج إلى ما نقوم به بتخزين الجواب، يمكننا القيام بتخزين كامل المصفوفة أو السلسلة و من ثم اختيار دليل عشوائي (أو محدد مسبقاً) و إستبداله بأي قيمة تخبرنا أن هذا الموقع مخفي، و عند طباعة السلسلة أو المصفوفة للمستخدم نقوم بالتحقق فيما إذا كان الموقع الحالي مخفي أم لا، نقوم بالطباعة فقط في حال كان غير مخفي، و نقوم بتخزين العنصر المخفي في متغير آخر يمثل الجواب الصحيح. بعد أخذ الجواب من المستخدم يمكننا استعمال مفهوم العبارات الشرطية للقيام بمقارنة ما كتبه المستخدم مع ما قمنا بتخزينه في مرحلة سابقة، و في حال كان الجواب يطابق المتغير الذي قمنا بتخزين الإجابة الصحيحة فيه نقوم بطباعة أن الجواب صحيح، و إلا نطبع أن الجواب خاطئ و نقوم بطباعة الجواب الصحيح للمستخدم. أي بشكل عام نحتاج إلى تعليمات الإدخال و الإخراج و مفهوم الحلقة و مفهوم العبارات الشرطية، أعتقد أنه يمكنك البحث عن هذه المفاهيم و محاولة كتابة الكود المطلوب، يمكنك الإطلاع على مقالات حسوب حيث أنها تحوي مقالات جيدة عن هذه المفاهيم.
  18. الفرق الجوهري بينهما هو أن ال button يمكن أن يحوي على أبناء، على عكس ال input و لكن كلاهما يظهر على شكل زر نستعمله لإرسال البيانات.
  19. إن أي عدد زوجي يجب أن يقبل القسمة على 2 و بالتالي يكون له باق قسمة مساو للصفر. مثلاً العدد 2 بنفسه له باق قسمة على 2 يساوي 0، حيث أن ناتج القسمة هو 1 و الباق 0، و العدد 8 مثلاً ناتج قسمته على 2 هو 4 و الباق صفر. بينما في حال كان لدينا عدد فردي مثل 9 فإن ناتج قسمته على 2 يساوي 4 و الباق 1، و هكذا من أجل كل الأعداد الفردية يكون باق القسمة مساو لل 1.
  20. إن الأعداد الزوجية لها باق قسمة على 2 يساوي الصفر و المعامل % يقوم بحساب باق القسمة، و لذلك يمكننا اختبار فيما إذا كان باق القسمة على 2 يساوي الصفر لمعرفة فيما إذا كان عدد زوجي أم لا.
  21. أفضل طريقة هي في البداية محاولة تكرار ما قمت برؤيته، من ثم القيام بمحاولات تعديل بسيطة كإضافات من عندك على ما قمت برؤيته، هذه التعديلات تساعدك على معرفة حالات مختلفة من الأخطاء التي من الممكن أن تحدث معك و أنت تحاول، في حال كان هناك قسم معين لا تفهمه و تعتقد أنه من الممكن تعديله فمن الأفضل أن تقوم بهذه المحاولة، أي مثلاً رأيت أن المدرب يقوم بخطوة ما و أنت لم تفهم فائدتها، جرب إزالتها و رؤية ما الذي سيحدث، هكذا تتعلم بشكل أفضل. بعد كل ذلك و بعد إنهاءك أي دورة فإنه من الضروري أن تقوم بعمل مشروع لوحدك لتجربة ما قمت بتعلمه، ابدأ بفكرة بسيطة جداً و طورها قليلاً في كل مرة، لا تقم بوضع فكرة كبيرة مباشرة فعندها إما سيفشل المشروع أو سيأخذ وقتاً طويلاً جداً.
  22. أحتاج إلى لقطات شاشة لعمليتي الاضافة حتى يمكنني تحديد المشكلة.
  23. اسهل حل يمكنك القيام به هو قص الصورة بدلاً من التعامل معها بشكق كامل. يمكنك أيضاً القيام بالقص باستعمال ال css عن طريق وضع طول و عرض محددين و وضع خاصية ال overflow على انها hidden. أو يمكنك استعمال ال css لوضع نصفها خارج حدود الضفحة.عبر القيام يعمل offset سالبة.
  24. أعتقد أنه من الأفضل متابعة الموقع الرسمي الخاص بالتقنية التي تستعملها، فهو الأكثر وثوقاً و طبعاً الأسرع. إن المخاوف التي تنتشر بسبب الذكاء الصنعي هي مجرد تهويل لا أكثر، بالطبع هناك تقنيات جديدة في الذكاء الصنعي ستساعدنا على بناء مواقع الويب بشكل أسرع، و لكن لا يوجد تقنية حتى الآن (و ليس في المستقبل القريب) قادرة على استبدال العنصر البشري في هذه العملية. من الجيد رغم ذلك التعرف على تقنيات الذكاء الصنعي لاستعمالها لمساعدتك، أو حتى لأتمتة العمليات الرتيبة.
  25. لا يفترض أن يعطي أخطاء فهو مجرد حقل محرفي، ما هي قيم بقية الحقول، هل يمكنك أخذ لقطة شاشة لكلا الإضافتين؟
×
×
  • أضف...