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

Kais Hasan

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

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

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

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

    22

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

  1. مرحباً محمد، سأذكر لك مثال حتى يمكن شرح الطرق. لنفترض أننا نريد كتابة برنامج يقوم بالتحقق فيما إذا كان عدد أكبر من الصفر، و في تلك الحالة يقوم بطباعة جملة معينة، عند ذلك يمكننا كتابة ما يلي: let x = 10; if (x > 0) { console.log("positive"); } أما في حال كنا نريد كتابة برنامج يقوم بالتحقق فيما إذا كان العدد أكبر من الصفر و طباعة جملة، أما إذا كان يساوي الصفر نطبع جملة أخرى، عندها يمكننا كتابة ذلك كما يلي: let x = 0; if (x > 0) { console.log("positive"); } else if (x === 0) { console.log("zero"); } و في النهاية إذا كنا نريد طباعة كافة الحالات و هي إذا كان أكبر من صفر، يساوي الصفر، أو أصغر من الصفر، يمكننا كتابة ذلك كما يلي: let x = -10; if (x > 0) { console.log("positive"); } else if (x === 0) { console.log("zero"); } else { console.log("negative"); } أتمنى أن تكون وصلت الفكرة. تحياتي.
  2. في حال كان سؤالك متعلقاً بأحد دروس الدورات من فضلك قم بنشر سؤالك في التعليقات أسفل الدرس. أيضاً قم بإضافة بعض التفاصيل، ليس واضحاً ما هو المشروع ولا حتى الخطأ الذي يظهر معك، من الجيد أخذ لقطة شاشة لرسالة الخطأ بشكل كامل و مشاركة ملفات المشروع على شكل ملف مضغوط حتى يمكننا مساعدتك. و لكن كما سبق و ذكرت قم بذلك في التعليقات أسفل الدرس في حال كان السؤال متعلقاً بدرس ما.
  3. تخرجك من الدورة يجعلك تملك كافة المعلومات اللازمة لبدء العمل في هذا المجال، كما أنه يضيف بعض المشاريع إلى معرض أعمالك. لكن هذا ليس كاف كبداية، أي أنك ستواجه قليل من الصعوبة حتى تبدأ العمل الحر، و السبب في ذلك ليس نقص مهارات أو معلومات، و إنما أنه لن يكون لك تقييم في مستقل، و بالتالي أصحاب المشاريع قد يفضلون حساب يحوي على تقييمات سابقة فهذا مثل ضمان لهم. و بالتالي في البداية ستعاني قليلاً من قلة المشاريع ريثما يصبح لديك تقييم، نصيحتي هي أن تحاول أن تكون أول من يقدم على المشاريع و تضع سعر منخفض قليلاً و ذلك لتجذب انتباه أصحاب المشاريع و بعد أن يصبح لديك عدة تقييمات يمكنك رفع السعر قليلاً. في حال أصبحت لديك خبرة و سمعة جيدة في الموقع فقد تتمكن من العيش من العمل الحر فقط، و لكن هذا ليس مضموناً فالعمل الحر ليس شيئاً ثابتاً، و بالتالي من الجيد لو تحاول إيجاد عمل ثابت بالإضافة إلى عملك الحر، في حال أردت ضمانات، كما أن العمل بشركة بشكل عام يعطيك خبرة أكبر من العمل الحر و ذلك ﻷن حجم المشاريع سيكون أكبر بشكل عام.
  4. يبدو أنك نسيت إضافة مكتبة Popper اللازمة لعمل ال bootstrap، و نقوم بإضافتها قبل ال script الخاص بال bootstrap كما يلي: <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.11.8/dist/umd/popper.min.js" integrity="sha384-I7E8VVD/ismYTF4hNIPjVp/Zjvgyol6VFvRkX/vR+Vc4jQkC+hVqc2pM8ODewa9r" crossorigin="anonymous"></script> تحياتي.
  5. من الجملة التي تذكرينها يبدو أنك ذاكرت الدروس بشكل غير صحيح، و إلا كنت نشرت سؤالاً بخصوص ما لم تفهميه بشكل مسبق. أي ما أقصده هو أنه يجب التدريب على كل درس و عدم الانتقال إلى ما يليه بدون فهمه بشكل كامل، و إلا فإن عدم فهم أول درس سيؤدي إلى عدم فهم ما يليه. ما يجب القيام به حالياً هو إعادة الدرس الأول و محاولة تطبيق ما يحويه، و في حال وجود أي مشاكل في فهم الدرس أو في تطبيقه يمكنك التعليق أسفل الدرس و سنقوم بالمساعدة، و لا يجب الانتقال إلى الدرس الثالي قبل فهم الدرس الحالي بشكل كامل.
  6. دائماً مرحب بأن تضيف تعليق تحت الشرح. لكن في حال أردت معرفة ذلك لوحدك فإنه يجب عليك دائماً الاستعانة بغوغل للبحث عن أي دالة، مثلاً لنفترض أنك تريد دالة أو أي طريقة لتحويل عدد صحيح إلى سلسلة نصيةـ فإنك تقوم بالبحث int to string js فسيظهر لك نتائج تدلك على كيفية القيام بذلك. بالطبع من الأفضل أن تبحث باللغة الانكليزية و ذلك ﻷن المصادر العربية أقل، في حال كنت تريد مصدر عربي يمكنك البحث داخل أكاديمية حسوب فهي أفضل مكان لذلك، بحيث تضمن جواب علمي صحيح.
  7. بعد التخرج من دورة علوم الحاسوب سيكون لديك المعلومات النظرية الكافية اللازمة ﻷي مبرمج حول الحاسوب و كيفية عمله و كيفية التفكير البرمجي، و لكنها بالطبع لن تضمن لك وظيفة و لكنها ضرورية من أجل باقي الدورات التطبيقية التي تقوم بشرح إطار عمل. أما عند التخرج من دورة تطوير واجهة المستخدم سيصبح لديك كافة المعلومات اللازمة للدخول في مجال تطوير واجهات المستخدم و العمل في هذا المجال، و لكن هذا وحده غير كافٍ، فعليك محاولة القيام ببعض المشاريع لوحدك حتى تضعها في ال CV الخاص بك عند التقديم، حيث أن مشروع واحد فقط لا يكفي للقبول بشكل عام. و لذلك قم بإنهاء هذه الدورات و القيام ببعض المشاريع لتضعها في ال CV ثم حاول التقديم على بعض الشركات، كما يمكنك محاولة التقديم على مشاريع العمل الحر على مستقل مثلاً.
  8. جرب أن تضع / قبل مسار الملفات حتى يتم اعتبار هذا المسار هو مسار نسبي relative path. أي يمكنك كتابة ما يلي: <link rel="stylesheet" href="/bootstrap/bootstrap.min.css"> <script src="/bootstrap/bootstrap.min.js"></script> في حال لم ينجح الأمر أيضاً جرب وضع نقطة يليها / أي يصبح كما يلي: <link rel="stylesheet" href="./bootstrap/bootstrap.min.css"> <script src="./bootstrap/bootstrap.min.js"></script> يفترض أن يعمل بعد هذا التعديل، في حال لم يعمل فغالباً موقع ملف ال html غير صحيح، في تلك الحالة شاركنا كامل المجلد الخاص بمشروعك على شكل ملف مضغوط للتحقق منه.
  9. في حال كانت لديك خلفية جيدة فهذا يعني أنك ستستطيع إنهاء هذا المسار بسرعة، فقم بمشاهدته فغالباً سيكون هناك بعض المعلومات التي لا تعرفها. كما أنه يجب أن توضح الفائدة التي تريدها؟ هذا كورس علوم حاسب و يهدف إلى تنمية مهارات التفكير و حل المشاكل و المهارات الأساسية في البرمجة، أكثر من مجرد تعليمات معينة بلغة معينة، فالبرمجة ليست مجرد تعليمات.
  10. أي موقع مختص بتنمية مهارة ال problem solving عن طريق المسائل البرمجية يمكنك من حل المشاكل بواسطة البايثون. هناك الكثير من هذه المواقع، أنصحك بداية بتجربة موقع HackerRank فهو أبسط هذه المواقع، أو codewars، بعدها يمكنك محاولة حل بعض المشاكل على codeforces، بالطبع ستواجه بعض الصعوبات في البداية و لكن الأمر يستحق، فهذه المهارة هي أهم مهارة لأي مبرمج. بالإضافة إلى أنه يمكنك سؤالنا عن أي أمر تستصعبه، و سنحاول مساعدتك على حله.
  11. يمكنك القيام بذلك بعدة طرق، أول طريقة هو أن تقوم بكتابة ملفين واحد للنسخة العربية و الآخر للنسخة الانكليزية، و عند الضغط على زر تحويل اللغة تنتقل إلى الصفحة الأخرى، حيث يمكنك الانتقال إلى صفحة أخرى في ال js باستعمال التعليمة التالية: window.location.href = "http://example.com/new_url"; طريقة أخرى هي أن تقوم بكتابة تابع يأخذ الجملة بأحد اللغتين (ثبت لغة معينة) بالإضافة إلى اللغة و يقوم بإعادة الجملة في اللغة المعطاة، أي في حال اخترت لغة الجمل الاصلية عربية، و قمت بتمرير اللغة العربية فسيعيد الجملة كما هي، و إلا يعيد ترجمتها (بحيث يمكنك الاحتفاظ بالترجمات في ملف مثلاً أو بأي طريقة أخرى). و بدل أن تقوم بوضع النص بشكل مباشر في عناصر ال html تقوم بوضعه بواسطة ال js عند تحميل الصفحة. و بالتالي في هذه الحالة يمكنك فقط عند الضغط على الزر تغيير اللغة الحالية (يمكنك الاحتفاظ باللغة الحالية في ال local storage) و إعادة تحميل الصفحة، و تلقائياً سيقوم بعرض الجمل باللغة المطلوبة. الطريقة الأولى أسهل، و لكن في حال كنت جديد و تريد التدريب على بعض الأمور المعقدة قليلاً جرب الطريقة الثانية. طبعاً جميع هذه الطرق قديمة و غير مستعملة حيث أن المواقع حالياً كلها تكتب بواسطة أحد أطر العمل، و أي إطار عمل يوفر طريقة خاصة به من أجل الترجمة بشكل أفضل من هذه الطرق، و لكنك يمكنك اعتبار هذه الطرق قريبة من ناحية المبدأ إلى الطريقة الثانية.
  12. يبدو أن السؤال خاص بأحد الدورات، من فضلك قم بنشر سؤالك تحت الدرس الذي لا تفهمه حتى يمكننا مساعدتك. و من الجيد أن يكون سؤال محدد، أي ما هي الخطوة أو الدقيقة التي لم تفهم بدءاً منها. تحياتي.
  13. من المفيد أن تبقى عند المسألة طالما أنك تحاول التفكير و تولد أفكار و تحاول تجريبها، عندما تتوقف عند ذلك من الجيد ترك هذه المسألة لليوم التالي و أكمل الدروس بشكل عادي، و في اليوم التالي تكرر نفس العملية، من الجيد القيام بذلك لحوالي اسبوع، فإن لم تستطع حلها بعد كل ذلك يمكنك سؤالنا هنا للحصول على تلميح، بعد التلميح يمكنك إعادة محاولة حلها لمدة يومين أو ثلاثة، فإن لم تستطع حلها بعد كل هذا يمكنك سؤالنا لإعطاءك الجواب، و من المهم أن تفهم الجواب بشكل دقيق و تفهم ما المشكلة التي حصلت حتى منعتك من التفكير بالحل. هذه هي الطريقة التي أتبعها مع الطلاب الذين أدربهم للمسابقات البرمجية، و هي طريقة ممتازة تساعد على جعلك تفكر لأقصى حد قبل إعطاءك الجواب، مما يجعل دماغك يتمرن بشكل أفضل.
  14. بشكل عام من الصعب إيجاد internship عن بعد، حيث أن أغلبها يتطلب تواجدك في المكتب الخاص بالشركة، حيث أنك متدرب و هذا ضروري للتواصل المباشر و لتسهيل عمل المشرف عليك. حاول إيجاد شركة محلية قريبة من مكان سكنك. في حال لم يكن لديك أعمال قد تكون فرصك قليلة، حاول أن تقوم ببعض المشاريع باستعمال ما تعلمته حتى تزيد فرصك بالقبول، يمكنك أيضاً بعد القيام ببعض المشاريع محاولة التقديم على المشاريع على موقع مستقل، فهناك الكثير من المشاريع البسيطة.
  15. بالطبع، قديماً كانت العلاقة تقتصر على نظام التشغيل الخاص بهذه الآلة، أي يتم وضعه على ذاكرة دائمة غير قابلة للتعديل و هذا هو الأمر كله. أما حديثاً فقد تطور الأمر ليشمل القدرة على الوصول إلى الأجهزة كافة عن طريق الانترنيت من حاسوبك أو الموبايل باستعمال تقنيات انترنيت الأشياء، المعتمد على مفهوم السحابة. أيضاً في الآونة الاخيرة يتم دمج الذكاء الصنعي مباشرة بهذه الآلات، مثلاً تصوير المستندات يحوي على نظام OCR أي التعرف على الكتابة، فيقوم بتحويل الصورة إلى كتابة لتسهيل عمليات التعديل مثلاً. طبعاً هذا كله يحوي برمجة بالطبع و لكن لا يقتصر عليها، فهناك مفاهيم رياضية و غيرها، مثلاً الذكاء الصنعي ليس فقط برمجة.
  16. دائماً قم بتجربة ما تعلمته مباشرة، قد لا يكون بإمكانك إنشاء تصميم يحوي كافة العناصر و لكن على الأقل ستكون تدربت على ما تعلمته حالياً، و لاحقاً كلما تعلمت شيء جديد يمكنك إضافته إلى هذا التصميم، أو إنشاء تصميم جديد من الصفر. أيضاً لا تتوقع شرح كل شيء في css، فالمهم شرح الأفكار المهمة، ما تبقى يمكنك إيجاده ببحث صغير على غوغل، لذلك ركز على الأفكار و طريقة العمل أكثر من مجرد التركيز على تعداد الخصائص فقط. رغم كل ذلك مع نهاية الدورة سيكون لديك ما يكفي لإنشاء تصميم حديث و جيد، أي أن ما يتم إعطاءه كاف لذلك، في حال أحببت إضافة بعض الأمور يمكنك البحث عنها أو سؤالنا و سنجيبك مباشرة.
  17. إحدى الطرق هي تحديد كافة الأسطر التي تريدين تعليقها و الضغط على ctrl + k ، و في حال أردت إزالة التعليقات عن مجموعة أسطر أيضاً نقوم بإلغاء تحديدها و الضغط على ctrl + u. لكن المشكلة في هذه الطريقة أن الأسطر يجب أن تكون متتالية، هناك طريقة أخرى تجعلك قادرة على وضع مؤشر كتابة على مجموعة أسطر غير متتالية و هي عن طريق الضغط على ctrl + alt بشكل مستمر ثم الضغط على كل سطر تريدينه، بعدها يمكنك استعمال الطريقة السابقة لتعليق هذه الأسطر. هذه الطريقة أيضاً تسمح لك بوضع المؤشر في أكثر من مكان و الكتابة في كل هذه الأماكن في الوقت نفسه.
  18. التابع السحري هو تابع يبدأ و ينتهي ب __ أي رمزين underscore. هو لا يعمل مثل التوابع العادية، بالطبع يمكنك استدعاءه بشكل مباشرة و لكن الفكرة منه أن يعمل بدون ذلك. كيفية عمله و متى تحتاج لاستعماله يختلف باختلاف التابع السحري، مثلاً التابع __init__ هو تابع سحري، و هو يستعمل لتهيئة الغرض من صنف معين، اي أنه مثل الباني، أنت لا تقوم باستدعاءه مباشرة بل يستدعى تلقائياً عند إنشاء الغرض، و بالتالي من الممكن أن تستفيد منه بوضع بعض العمليات التي تريد القيام بها عندما يتم إنشاء غرض من الصنف. هناك الكثير من التوابع السحرية سأذكر أهمها و لاحقاً ستتعرف على غيرها عند الحاجة. __len__ يستعمل لإرجاع طول غرض من هذا الصنف، هذا التابع مفيد في حال كان الصنف يمثل حاوية عناصر، و يتم استدعاء هذا التابع عند تمرير غرض من الصنف إلى الدالة len. __str__ يستعمل لإرجاع تمثيل نصي للغرض، هذا التابع يتم استدعاءه عند طباعة الغرض، أو في أي مكان يجب تحويل الغرض فيه إلى سلسلة نصية.
  19. للتعامل مع أي برنامج دائماً نحاول البحث فيما إذا كان هذا البرنامج يملك API تمكننا من التعامل معه أم لا؟ لحسن الحظ فإن Whatsapp يملك API، حيث أن أغلب التطبيقات المشهورة تملك ذلك فهذا يجعل من الممكن دمجها في المواقع. هناك الكثير من التعليمات و الطرق لإرسال الصورة باستعمال ال API، يمكنك الإطلاع على ال API من الرابط التالي، فهو يحوي ما تريده بالتفصيل https://developers.facebook.com/docs/whatsapp/cloud-api/get-started#set-up-developer-assets
  20. AdMob ليس منصة لرفع التطبيقات و إنما منصة لإضافة إعلانات على تطبيق لك، على عكس google play و الذي هو منصة لرفع تطبيقك عليها. بالتالي يجب عليك رفعه على google play و من ثم استعمال AdMob في حال أردت إضافة إعلانات على تطبيقك لغاية الربح. يفضل أن تجعل تطبيقك مجاني في حال أردت إضافة إعلانات، أو يمكنك جعله مدفوع و بلا إعلانات. أيضاً هناك بعض التطبيقات التي تكون مجانية و مع إعلانات و توفر خيار للمستخدم لإشتراك سنوي أو شهري لإلغاء الإعلانات و ميزات أخرى. شخصياً أرى ثالث خيار هو الأفضل، فأغلب التطبيقات العالمية تتبع هذه الطريقة و هي الأكثر ربحاً.
  21. هناك الكثير من الأمور في التفاضل التي ستحتاجها في تعلم الآلة، خاصة التفاضل في أبعاد أعلى، حيث أننا في تعلم الآلة غالباً نتعامل مع أبعاد كبيرة كمليون بعد مثلاً. حالياً يكفي كما أخبرتك في تعليق سابق، ابدأ في تعلم الآلة حتى تعرف فعلاً ما ينقصك و تتعلمه، ليس من الجيد أن تتعلم كل شيء ثم تتعلم تعلم الآلة، ففي هذا المجال لا يوجد طريق تسلسلي، أي عليك أن تدرس القليل من تعلم الآلة ثم تعمق فهمك للرياضيات و تعيد هذه العملية مرات عديدة، فهذا المجال واسع جداً. لقد سبق و أرفقت روابط كورسات خاصة بالتحليل الرياضي، يمكنك الإطلاع عليها بعد أخذ كورس تعلم آلة و بناء تطبيق واحد على الأقل.
  22. كورس التحليل الرياضي يحتوي على شرح هذين المفهومين، فهما جزء من التحليل الرياضي.
  23. هذا يعتمد على طريقة دراستك، في حال كنت من الأشخاص الذين يقومون بأخذ ملاحظات بشكل دائم فإنه من الافضل كتابة بعض الملاحظات على دفتر. و لكن هذا ليس ضروري، شخصياً لا أقوم بأخذ ملاحظات أبداً، بل أقوم بحل تمارين على ما تعلمته و ذلك حتى أصبح جيداً فيه، و تلقائياً يصبح الأمر مثل المعلومات الأساسية. لذلك من الأفضل أن تقوم بحل بعض التمارين على ما تقوم بتعلمه، أيضاً من الجيد أن تقوم بالتفكير في كل شيء تقوم بتعلمه في تعلم الآلة و محاولة ربطه بما تعلمته من رياضيات.
  24. نعم هذا هو، و هو مجاني، قد يكون الحصول على الشهادة مدفوع و لكن يمكنك تعلم المحتوى بشكل مجاني.
  25. من الجيد أن تبدأ بكورس بسيط قبل البدء بدراسة الرياضيات، هذا يجعلك على دراية بما هو مهم و ما هو غير مهم. يكفي أنك تعلمت التفاضل و التكامل حالياً.
×
×
  • أضف...