-
المساهمات
8752 -
تاريخ الانضمام
-
تاريخ آخر زيارة
-
عدد الأيام التي تصدر بها
117
نوع المحتوى
ريادة الأعمال
البرمجة
التصميم
DevOps
التسويق والمبيعات
العمل الحر
البرامج والتطبيقات
آخر التحديثات
قصص نجاح
أسئلة وأجوبة
كتب
دورات
كل منشورات العضو محمد_عاطف
-
وعليكم السلام ورحمة الله وبركاته . هذا يعتمد عليك وعلي معرفتك السابقة ةالمجال الذى تريد الدخول فيه. إذا لم يكن لديك خبرة سابقة في مجال التكنولوجيا عموما فإنه يفضل أخذ دورة علوم الحاسب قبل البدأ مباشرة في دورة الذكاء الاصطناعي وهذه تؤهلك عموما للدخول في اي مجال تريده وتساعدك في اختيار المجال إذا كنت مشتتا ومحتارا في إختيارالمجال. ولكن إذا كانت لديك خبرة سابقة واساسيات علوم الحاسب وتريد تطبيق الذكاء الاصطناعي مع تطوير البرمجيات فيمكنك الاشتراك في اى دورة اخري. واليك بعض الاجوبة التالية يفضل قرائتها جيدا ستساعدك في إختيارالدورة الثانية :
-
يمكنك الإتصال بالبنك المصدر للبطاقة وسؤاله عن سبب رفض العمليه حيث أن الخطأ الخاص بعمليه مرفوضه هو بسبب البنك . بعض بالنوك حاليا لا تعمل لديها بطاقة الخصم ( debit card) في المدفوعات بالعملة الأجنبية ولكن تتيح لك بطاقة الائتمان (Credit Card) . لذلك يمكنك التواصل مع البنك الخاص بك والسؤال عن إمكانية الشراء من الخارج بال debit card أم لا . وإذا كان لا يتيح يمكنك طلب بطاقة ائتمان ولكن لا أنصح بها لما لها من حرمانية . أو يمكنك الدفع عن طريق بايبال ويمكنك ربط بطاقة debit card بحساب باي بال ولكن تاكد من البنك الخاص بك من أنه يسمح بالربط بحساب باي بال . أيضا من الممكن أن تجعل شخص يشتري لك بطاقة هدية بقيمة الدورة التي تريدها ثم استخدامها وسيتم إضافة الرصيد الخاص بقيمة البطاقة لحسابك وستجد تفاصيل عن ذلك هنا: شراء بطاقة هدية استخدام بطاقة الهدية
-
إن الأكاديمية هنا تطور دائما الدورات بناء على سوق العمل والتقنيات المطلوبة والمجالات المتاح. وبخصوص الدورات الحالية فيتم تحديثها دائما كل فترة إن لزم الأمر لمتابعة التطورات التي تحدث والتقنيات الجديدة التي تستحدث. أما بخصوص إضافة دورات جديدة فالأمر كما أخبرتك يعتمد على عدّة عوامل منها مدى الإحتياج لها والطلب عليها والوظائف المتاحة لها سواء عمل حر أو شركات ،لذا الأمر راجع لإدارةالأكاديمية في تلك النقطة ويمكنك المتابعة هنا لأي تحديث سوف يحدث. ما هي الدورة التي تريد أن تتاح على الأكاديمية هنا ؟
-
وعليكم السلام ورحمة الله وبركاته . بالنسبة إلى الإختبار جميع الدورات الإختبار بها على نفس الشاكلة. بعد اتمامك للدورة سيكون عليك التواصل معنا من خلال مركز مساعدة حسوب لتحديد موعد الامتحان, وسيكون على الشكل التالي: اجراء محادثة صوتيّة لمدة 30 دقيقة يطرح المدرّب عليك أسئلة متعلّقة بالدورة والأمور التي نفّذتها خلالها. يحدد لك المدرّب مشروعًا مرتبطًا بما قمت به أثناء الدورة لتنفيذه خلال فترة محددة تتراوح بين أسبوع الى أسبوعين. اجراء محادثة صوتيّة أخرى لمدّة 30 دقيقة يناقش بها مشروعك وما نفذته وتطرح أسئلة خلالها. يجب عليك على الأقل الإنتهاء من 4 مسارات للتقدم للأختبار وسيتم أمتحانك على المسارات التي سوف تحددها و يجب عليك أيضا رفع المشاريع التي قمت بكتابتها أثناء الدورة ومتابعة الدروس على موقع github و إرفاقها قبل التقدم لإمتحان حتي يتم تقيمها . ويمكنك الدخول على الرابط التالي لتفاصيل بخصوص الإختبار والشهادة
- 1 جواب
-
- 1
-
-
const [showDeleteMessage, setShowDeleteMessage] = useState(false); const [stopDeleting, setStopDeleting] = useState(false); const [deleting, setDeleting] = useState(false); const [timeout, setTimeout] = useState(false); const handleStopDeleting = () => { setStopDeleting(true); setShowDeleteMessage(false); clearTimeout(timeout); console.log("Stop deleting!"); }; const deleteMyPost = async () => { try { // عملية حذف البوست } catch (error: any) { // الخطأ } }; const confirmDeleting = () => { setShowDeleteMessage(true); const timeout = setTimeout(() => { if (!stopDeleting) { setDeleting(true); deleteMyPost(); } }, 5000); setTimeout(timeout); }; return { <button onClick={confirmDeleting}> "delete post" </button> <button onClick={handleStopDeleting}> "cancel" </button> } الخطأ الأساسي أنك عند الضغط على زر cancel لم تستدعي الدالة التي تقوم بإلغاء الحذف بل فقط كنت تقوم بتغير القيمة فكان يجب عليك الضغط على cancel ثم delete post للإيقاف . ولكن الآن قد قمت بفصل الإثنين لك عند الضغط على cancel تقوم بإلغاء setTimeout
-
يمكنك بوضعها null أو false والتأكد في الشطر الخاص ب stopAction أن لا تكون القية null أو false علي حسب القيمة الإفتراضية التي وضعهتها
-
هذا ما أخبرتك به أنه سيحدث خطأ لانه لن يجد timeout لذلك يجب إستخدام useState ل useState حتي يتم حفظه في المكون لديك . و يفضل إرسال كود المكون كاملا .
-
أولا المشكلة تحدث لأنك تحاول إيقاف ال setTimeout بعد إنشاءه . وهذا خطأ . فالذى يحدث فعليا أن تنشأ دالة setTimeout وترجع id مثلا ب 1 وإذا قيمة timeout تصبح 1 . وحين الضغط على الزر الإلغاء سيدخل للدالة confirmAction ويقوم بإنشاء setTimeout جديد ب id جديد ولنقل مثلا 2 وإذا ستصبح قيمة timeout ب 2 و سيقوم بإلغاء ال setTimeout التي لها id يساوي 2 و لكن ال id الذي يساوي 1 لم يتم إيقافه لذلك سوف ينفذ . والحل هو التالي : const confirmAction = () => { // هذه الدالة تبدأ العمل عندما يتم الضغط على زر محدد setShowActionMessage(true); if (stopAction) { // عند الضغط على زر الإيقاف true هذه الحالة تصبح clearTimeout(timeout); }else { const timeout = setTimeout(() => { if (!stopAction) { setAction(true); doTheAction(); // هذه الدالة المستهدفة من هذه العملية } }, 5000); } }; ولكن سيحدث خطأ وهو بسبب عدم تعريف ال timeout لذلك يجب وضعها في useState حتي يكون ال id معك في جميع الأحوال وإيقافه من أي مكان . والأفضل جعلهما دالتين حيث الدالة confirmAction مسؤولة فقط عن إنشاء setTimeout ودالة أخري مثلا cancelAction وهي مسؤولة عن الإلغاء
-
الأمر بسيط أولا قمنا بإستخدام حلقة تكرار for حيث تقوم هذه الحلقة بتكرار الكود الذى بداخلها بعدد معين من التكرارات بناء على الشرط. في حلقة For قمنا بتعريف متغير i وهو المتغير الإبتدائي في الحلقة وأعطيناه رقم 8 . في الجزء الثاني من حلقة for هو جزء الشرط والذى ستم التكرار ما دام الشرط صحيحا وهنا كتبنا شرط أن الرقم i لا يكون أقل من 0 . وفي الجزء الثالث من الحلقة فهو الجزء الذى سيتم تنفيذه مباشرة عن إنتهاء دورة من دورات for وهنا قمان بإنقاص 1 من قيمة i. وبداخل for نقوم بجملة الطباعة console.log و نقوم بطباعة '#'.repeat(i) والدالة repeat تقوم بتكرار السلسلة بعدد من المرات التي يتم تمريرها له . لذلك في الدورة الأولي سيكون i ب 8 لذلك سيتم طباعة 8 علامات # وبعد ذلك سيتم إنقاص i ب 1 لتصبح الآن 7 . والشرط صحيح حيث 7 أكبر من 0 . لذلك سندخل في الدورة الثانية وسيتم طباعة # 7 مرات وهكذا إلى أ، تصبح i ب 1 وسيتم طباعة # فقط وبعد ذلك ستكون i ب 0 ولن يتحقق الشرط وسيخرج من ال for . وإذا أردت عكس المثلث فكل ما عليك تغيره هو الرقم الإبتدائي في for و الشرط و أيضا الجزء الذى سيتم تنفيذه بعد إنتهاء أى دورة. ويمكنك المحاولة بنفسك وإذا لم تستطع يمكنك إخبارى لتوضيح الحل لك
- 2 اجابة
-
- 1
-
-
إذا كان الحظر يتم تفعيله من السيرفر فإنه لا يمكن إلغاء حظره إلا عن طريق الوصول إلى السيرفر أو لوحة التحكم . حيث أن أي كود ستنفذه سيكون في الواجهة الأمامية أي في المتصفح فإذا كان الحظر في المتصفح يمكنك البحث عن الكود في ملفات ال js . ويمكنك تغير ال IP الخاص بك عن طريق تحميل برامج vpn لإخفاء ال ip الأصلى الخاص بك . وأيضا إذا لم تكن مشترك في خدمة ال ip الثابت (static) مع مزود خدمة الإنترنت لديك . فإن ال ip الخاص بك يتغير كلما تم إيقاف وتشغيل ال router . لذلك إذا أردت تغير ال ip كل ما عليك إعادة تشغيل ال router وستحصل علي ip جديد.
- 3 اجابة
-
- 1
-
-
نعتذر لك عن أى تأخير ولكن هناك ضغط حاليا على مركز الدعم وسيتواصلوا معك في أسرع وقت إن شاء الله .
- 5 اجابة
-
- 1
-
-
مرحبا يوسف إذا كان سؤالك بخصوص الإختبار فمن فضلك يمكنك مراسلة مركز الدعم حيث أن أي سؤال أو إستفسار بخصوص الإختبارات فهم من سيساعدونك
-
يمكنك الضغط على CTRL + ALT + P وكتابة open User Settings وقم بإختيار الخيار الذى يوجد به كلمة JSON . بعد ذلك قم بكتابة السطر التالي : "emmet.showExpandedAbbreviation": "always", ولكن أولا قم بالبحث في الملف عن emmet.showExpandedAbbreviation إذا وجدتها قم بحذف السطر وإضافة السطر السابق. بعد ذلك يمكنك إستخدام إختصار html عن طريق الضغط على SHIFT + 1 وستظهر لك علامة التعجب
- 4 اجابة
-
- 1
-
-
توجد عدة فروق في ذلك ولنشرح معا الفرق . Regression (الانحدار): الانحدار يُستخدم عادة لتحديد العلاقة الرياضية بين متغير تابع (المرض) ومتغيرات مستقلة (العوامل الأخرى المتعلقة بالمريض مثل العمر، الوزن، التاريخ العائلي، ومستويات السكر في الدم السابقة). و يمكن استخدام الانحدار لإنشاء نموذج يقوم بتوقع إحتمالية إصابة الشخص بمرض السكر بناءً على البيانات المتاحة. النتائج تكون سهلة التفسير والتحليل، حيث يمكن فهم كيفية تأثير كل متغير على النتيجة فمثلا كلما كبر السن زادت إحتمالية الإصابة والوزن وهكذا. Neural Networks (الشبكات العصبية): الشبكات العصبية تعد أداة قوية في التعلم العميق وتحليل البيانات المعقدة.تحتاج الشبكات العصبية عادة إلى كميات كبيرة من البيانات للتدريب والتي يمكن أن تكون ضرورية لتحليل العلاقات الغير خطية بين المتغيرات. وقد تكون قادرة على استخدام معلومات معقدة أو غير خطية بطرق تحليلية تفصيلية ولكن في بعض الأحيان صعبة التفسير.
- 3 اجابة
-
- 1
-
-
بخصوص المشاريع الكبيرة والعملية حيث ستجدين أن الدروس متصلة ببعضها البعض فهذا يجب إنشاء مجلد منفصل لهذه المشاريع الكبيرة . أما بالنسبة للمسارات الأخري فيجب عمل مجلد منفصل لكل مسار . إذا كنتي قمتي بكتابة المسار كاملا في ملف واحد فلابئس ولكن يجب أن يكون في هذا الملف جميع الأكواد التي تم شرحها في الدروس لتدل على تطبيقك لها . ويجب وضع الملف في المجلد الخاص بالمسار به . ولكن يفضل حاليا حين دراسة الدورس الجديدة فصل كل كود في ملف منفصل ووضعه في مجلد المسار الخاص به
-
جميعنا في بداية تعلم أى شئ جديد نصاب بالتشتت والإحباط خاصة لو واجهنا صعوبة في بداية الأمر و الإستسلام لهذا الشعور يعنى الفشل لذلك لا تقلقي فالأمر بسيط وستجدين بعد ذلك أن الأمر لا يستدعي كل هذا القلق والتشتت . بالنسبة لدراسة الدورة يفضل مذاكرة الدروس و الأقسام بالترتيب وعدم تجاهل أو تفويت أى درس لأن كل درس ومسار يعتمد على الدروس التي قبله وحتي لا تتراكم عليكي الأمور . إن الإستيعاب يختلف من شخص إلى شخص حيث هناك من يستطيع أن يفهم الدرس من أول مرة و هناك من يقوم بتكراره حتي يفهم الدرس وهذا ليس شيئا سيئا بل هو جيد ما دام هناك إصرار و إستمرار على الفهم . لذلك أولا يجب عليكى مشاهدة الدرس وبالأخص الأساسيات و إذا ما واجهتك أى مشكلة يمكنكي السؤال أسفل الدرس في التعليقات والتأكد من فهم كل شئ وبعد ذلك يجب عليكي التطبيق العملي مع المدرب و أيضا ستجدين في نهاية الدرس تدريبات يجب عملها حتي تتأكدي من فهمك للدرس ويمكنك وضع حلك في التعليقات حتي يعطيكي المدربون النصائح و إصلاح الأخطاء التي تواجهك . وكما وضحت لكي فإن الأهم من مشاهدة الدرس هو التطبيق لان التطبيق العملي هو من سيعطيكي الخبرة أكثر وهو ما سيوضح لكي إذا كنتي قد فهمتي الدرس تمام أم توجد بعض الأشياء الغير واضحه وأخيرا يجب عليكي عمل مجلد خاص بكل مسار وبكل مسار تقومين بعمل مجلد خاص بكل درس وحفظ الأكواد والتدريبات بهم حيث سيتطلب منكي في نهاية الدورة تسليم تلك الملفات حتي تحصلين على الشهادة .
- 6 اجابة
-
- 1
-
-
الخطأ الذى يظهر هو خطأ 503 وهذا الخطأ يخبرك أن السيرفر لا يستطيع تنفيذ طلبك الآن لانه لا يستطيع استقبال المزيد من الطلبات في الوقت الحالي . وهذا بسبب أنك قد قمت بإرسال العديد من الطلبات في نفس الوقت أو انك قد أنهيت ال bandwidth الخاص بك لهذا الشهر أو اليوم حيث أن الإستضافات المجانية تعطيك bandwidth محدد لا يمكن تخطيه . أو ممكن بسبب أن 000webhost لديه مشكلة حاليا . وقد حدثت معي عدة مرات على 000webhost . قم بمحاولة إنشاء حساب جديد وإنشاء قاعدة بيانات جديد إذا ظهر لك نفس الخطأ إذا المشكلة لدى 000webhost و يمكنك التجربة مرة أخري لاحقا بعد إصلاح الخطأ لديهم . إذا تم إنشاء قاعدة بيانات إذا المشكلة في الحساب لديك وقد أنهيت ال bandwidth الخاص بك أو تخطيت عدد قواعد البيانات المسموحة لك
-
لا مشكلة يمكنك وضعه بداخل عنصر script هكذا : <script> let button = document.querySelector("#button-id"); if (button) { button.click(); } </script>
-
وعليكم السلام ورحمة الله وبركاته . يفضل جعل الزر هو من يقوم بفتحه حتي لا يظهر ال form دائما و يعيق المستخدم . ولكن إذا أردت فتحه في صفحة معينة دون باقي الصفحات فهذا ممكن . والحل الأفضل لذلك هو إستخدام كود جافاسكريبت يقوم بالضغط علي الزر كما لو أن المستخدم هو من قام بالضغط : let button = document.querySelector("#button-id"); if (button) { button.click(); } في الكود السابق إفترضت أن الزر لديه id يسمي button-id ويمكنك تغيره إلى ال id الذى لديك . وعند تشغيل هذا الكود سيعمل بالضغط على الزر ويقوم بفتح ال form تلقائيا. ويمكنك إخفاء الزر عن طريق وضع خاصية display:none; #button-id{ display:none; }
- 5 اجابة
-
- 1
-
-
إذا كنت تقصد أن المؤشر لا يخرج خارج إطار ال machine وتريد الخروج من ال machine . فإن هذه الخاصية في vmware والبرامج الأخرى حيث تقوم بإمساك المؤشر داخل الشاشة الخاصة بال machine فقط وهذا حتي تستطيع التعامل بحرية داخل ال machine وتعتبرها كانها شاشة منفصلة فمن الممكن حينما تقوم بتحريك المؤشر لطرف الشاشة تراه خرج لشاشة الجهاز لديك وهذه مشكلة لذلك تقوم ال vmwares بإمساك المؤشر . ولجعل المؤشر يخرج من ال machine يمكنك الضغط على Ctrl+Alt وهكذا ستقوم vmware بترك المؤشر .
-
يجب عليك الضغط على زر yes حتي يقوم بفتح النظام لديك . بعد ذلك قم بالضغط على القائمة vm في الأعلى وبعد ذلك Settings . بعد ذلك قم بإختيار CD/DVD (SATA) ومن ثم قم بإلغاء تفعيل connected power on هكذا .
-
الأمر بسيط فبدلا من وضع جميع العناصر th وهي رأس الجدول في عنصر tr وهو الصف . نقوم بوضع ال th مع ال td في نفس الصف tr هكذا : <!DOCTYPE html> <html> <head> <style> table, th, td { border: 1px solid black; border-collapse: collapse; } th, td { padding: 5px; text-align: center; } </style> </head> <body> <table style="width:100%"> <tr> <td>محمود أمين</td> <th>:الإسم </th> </tr> <tr> <td>111 111 111</td> <th>رقم الهاتف:</th> </tr> <tr> <td>عدن</td> <th>السكن:</th> </tr> </table> </body> </html>
- 2 اجابة
-
- 1
-
-
لاحظ يوجد قرص بين ال c والمسحاة التي تريد تزويدها ولذلك لن يمكنك إضافتها فكما أخبرتك يجب أن يكونو بجوار بعضهم البعض . يمكنك تقعيل ال d ونقل الملفات إليه وحذف القرص الأخر وبعد ذلك إضافته إلى ال c لكن بهذا الوضع لن يمكنك . ويمكنك تنزيل برنامج partition wizard حيث هو من أفضل البرامج التي تقوم حذف و تقسيم الأقراص يمكنك البحث عن فيديو له عن اليوتيوب وسيساعدك في ذلك دون الحاجة لنقل أى ملفات
- 8 اجابة
-
- 1
-
-
يجب على القرص D أن يكون ال unallocated أي يكون لونه أسود وليس أزرق وأيضا يكون بجوار ال c مباشرة . بعد ذلك يجب الضغط على ال c وإختيار extend volume وبعد ذلك تحدد المساحة الذى تريد زيادتها . ويمكنك إرسال صورة لما يظهر لك
- 8 اجابة
-
- 1
-