-
المساهمات
834 -
تاريخ الانضمام
-
تاريخ آخر زيارة
-
عدد الأيام التي تصدر بها
1
نوع المحتوى
ريادة الأعمال
البرمجة
التصميم
DevOps
التسويق والمبيعات
العمل الحر
البرامج والتطبيقات
آخر التحديثات
قصص نجاح
أسئلة وأجوبة
كتب
دورات
كل منشورات العضو Mustafa Mahmoud7
-
يمكنك مراجعة الدروس من خلال الاكواد التي كنت كتبتها وطبقتها مع المدرب لتذكر ما وظيفة هذه الأكواد وماذا تفعل. إذا كنت قد كتبت ملاحظات سريعة من الدروس قم بمراجعتها لترسيخ فهمك للأكواد. يمكنك التوجه إلى موسوعة حسوب ومراجعة هذه الأساسيات مكتوبة ويوجد بها توثيق جيد للغة بايثون من هنا واختر من الفهرس المواضيع التى تريد مراجعتها. إذا واجهت بعد ذلك أى صعوبة في المتابعة مع المدرب بسبب الإنقطاع يمكنك مراجعة الفديوهات من جديد بدون كتابة الأكواد ما دام كتبتها في السابق فقط مراجعة والمشاهدة تقريبا مدتها ساعتين فقط.
- 2 اجابة
-
- 1
-
-
وعليكم السلام، تستطيع عمل ذلك عند فتحك للملف قم بالضغط في لوحة المفاتيح على Shift + Alt + F، أو في أى مكان في الملف قم بالضغط على زر الفأرة الأيمن ثم اختر Format Document، وستلاحظ أنه تم ترتيب الوسوم والسطور بشكل جيد وللوصول للبداية أو النهاية، قم بالضغط بزر الفأرة الأيسر على أي وسم وستلاحظ أنه تم التحديد باللون الرمادي مع نفس التحديد فى شريط التمرير الجانبي كما يظهر بداخل الدائرة ويمكنك أيضا تثبيت إضافة مثل Prettier - Code formatter فهى تساعد فى التنسيق أيضا عند كل عملية حفظ للملف وفى لغات أخرى غير html.
-
يرجى وضع التعليق في صندوق التعليقات أسفل الفيديو الخاص بالدرس حيث هنا توضع الأسئلة العامة الغيرة متعلقة بالدورات وذلك لمساعدتك بشكل أفضل.
-
إذا بالفعل أنت لا تقوم بكتابة أو تستدعي أى روابط خاصة ب google translate إذا المشكلة في الإضافة كما أشرنا في التعليقات السابقة.
-
هذا الخطأ غير متعلق بالكود الخاص بك ولكن يوجد إضافة مثبتة في جوجل كروم خاصة بالترجمة وهي Google Translate يمكنك تعطيلها وسيختفى هذا الخطأ أو تركها فهى غير مؤثرة على نتيجة الكود الخاص بك. إذا كان هذا السؤال خاص بالدورات، في المرات القادمة يرجى وضع التعليق في صندوق التعليقات أسفل الفيديو الخاص بالدرس حيث هنا توضع الأسئلة العامة الغيرة متعلقة بالدورات وذلك لمساعدتك بشكل أفضل.
-
عند دخولك للصفحة الرئيسية للموسوعة قم بكتابة dict فى خانة البحث وستظهر اقتراحات لك اختر أول اختيار أو قم بالذهاب للصفحة الخاصة بالقواميس من هنا. وفى الصفحة الرئيسية يمكنك الدخول لأى لغة تريد ويوجد فهرس بكامل الدروس الموجودة لهذه اللغة يمكنك تصفحها. بالتوفيق...
-
بنسبة كبيرة نعم فأنت تقوم بالأتي:- 1- تقسيم الكود الخاص بك إلى دوال صغيرة ليسهل التعامل معها. 2- التعامل مع الأخطاء وإرسال رسالة بالخطأ في كل جزء يسهل العملية أيضا. 3 -إرسال كود حالة مثل (200 ، 500، 201) جيدا أيضا. 4-طريقة التسمية وكل شئ يقوم بما تم تسميته به جيد. 5- كتباتك لتوثيق الدالة مثل هذا جيد ضعه لكل الدوال أيضا. /** * Method: POST * route : /api/auth/login * */ استمر على هذا النهج ومع الوقت ستتطور أكثر وأكثر. بالتوفيق..
- 4 اجابة
-
- 1
-
-
المشكلة في middlewares/protect.js في هذا السطر const token = cookieStore.get('jwt')?.value; حيث تريد الوصول للكوكيز باسم jwt وهي غير موجودة لأنك في utils/generateToken عند وضع الكوكيز كانت باسم token وليس jwt response.cookies.set('token', token, { ^^^^^ httpOnly: true, secure: process.env.NODE_ENV !== 'development', sameSite: 'strict', maxAge: 60*60*24 }); لذا نقوم بتعديل هذا السطر في middlewares/protect.js ليصبح ليتم الوصول للكوكيز بشكل صحيح const token = cookieStore.get('token')?.value; وأيضا قم باستيراد الحزمة jwt أعلى ملف middlewares/protect.js ليتم الوصول منها للدالة ()verify حيث أننا ننريدها ليتم فك تشفير token بعد ذلك. import jwt from 'jsonwebtoken' بالتوفيق...
- 4 اجابة
-
- 1
-
-
وعليكم السلام ورحمة الله وبركاته، نعم، بعد تنفيذ عبارة break في حلقة (مثل for أو while) أو في جملة التبديل (switch) يتم تجاهل أي كود يأتي بعدها داخل نفس الكتلة. break تُستخدم للخروج من الحلقة أو الجملة الشرطية وبالتالي فإن أي كود بعد break لا يتم تنفيذه. إليك مثال لتوضيح ذلك عن طريق لغة جافاسكربت: for (let i = 0; i < 5; i++) { if (i === 3) { break; } console.log(i); // سيتم طباعة الأرقام 0 و 1 و 2 فقط } عندما تصل الحلقة إلى الرقم 3 يتم تنفيذ break، مما يعني أن الحلقة تتوقف ولا يتم تنفيذ أي كود بعد break داخل الحلقة. في المرات القادمة ستجد أسفل الدرس صندوق للتعليقات كما هنا يرجى وضع تعليقك أسفل الدرس حيث هنا هو قسم الأسئلة العامة حيث توضع الأسئلة الغير متعلقة بالدورات وذلك لمساعدتك بشكل أفضل.
-
من فضلك ستجد أسفل الدرس صندوق للتعليقات كما هنا يرجي وضع تعليقك أسفل الدرس حيث هنا هو قسم الأسئلة العامة حيث توضع الأسئلة الغير متعلقة بالدورات وذلك لمساعدتك بشكل أفضل.
-
بخصوص الأمور المالية توجه إلى مركز المساعدة وتحدث معهم سيتم مساعدتك بشكل أفضل.
-
قم بتعديل كتابة let بدلا من LET، وجود الدائرة البيضاء بجانب اسم الملف تعني أنه لم يتم حفظه يتم حفظه بالضغط في لوحة المفاتيح على Ctrl + s. let X = 7; let Y = 2; console.log(X + Y);// 9 في المرات القادمة يرجى وضع التعليق في صندوق التعليقات أسفل الفيديو الخاص بالدرس حيث هنا توضع الأسئلة العامة الغيرة متعلقة بالدورات وذلك لمساعدتك بشكل أفضل.
-
عند إنشائك لقاعدة بيانات فيMongoDB Atlas تكون قاعدة البيانات هذه داخل مشروع معين وداخل المشروع يمكنك إنشاء العديد من قواعد البيانات وعند التغيير في التبويب الخاص ب Network Access سواء جعلت الإتصال بقواعد البيانات يكون عام أو اختيار أخر من الإختيارات الأخرى هذا يؤثر على كل قواعد البيانات بداخل هذا المشروع. ولكن في حالة أنشئت كل قاعدة بيانات بداخل مشروع منفصل وقمت بالتغيير لا تؤثر التغييرات إلا على هذا المشروع فقط. MongoDB Atlas في التبويب الخاص ب Network Access وعند الضغط على الAdd IP address ستظهر لك هذه النافذة ومنها تستطيع إضافة أي IP Address الذي تسمح له للوصول إلي قاعدة البيانات الخاصة بك أو لو كان لك زميل أخر يعمل على نفس المشروع يمكنك إضافة ال IP Address به. ويمكنك الضغط على على ADD CURRENT IP ADDRESS لكي يقوم بإضافة ال IP Address الخاص بك مباشرة بدون تدخل منك. ويمكنك الضغط على ALLOW ACCESS FROM ANYWHERE لكى يصبح IP Address عام يسمح بأي إتصال إلى قاعدة البيانات من أي عناوين IP خادم أو جهاز أو تطبيق يريد ذلك ويكون 0.0.0.0/0 . يمكنك إضافة الIP Address الخاص بالتطبيق بعد رفعه على على الإستضافة يمكنك أخذ هذا ال IP Address من اعدادت الإستضافة لتطبيقك وتضيفه مثل أي IP Address كما بينت في الحالة الأولى وهذا يعتبر الأفضل فى المشاريع الحقيقية حتى لا يتم الإتصال بقاعدة البيانات إلا من خلال تطبيقك فقط.
- 1 جواب
-
- 1
-
-
لكتابة علامة التعجب قم بالضغط على Shift + 1 إذا كان سؤالك متعلق بالدورات فى المرات القادمة ستجد أسفل فيديو الدرس في نهاية الصفحة صندوق تعليقات كما هنا، أرجو طرح الأسئلة أسفل الدرس وليس هنا في قسم الأسئلة البرمجة حيث نطرح الأسئلة العامة الغير متعلقة بمحتوى الدورة أو الدرس، وذلك لمساعدتك بشكل أفضل.
- 4 اجابة
-
- 1
-
-
نعتذر على هذا التأخير، يتأخر الرد أحياناً من مركز المساعدة وذلك قد يكون بسبب الضغط وهذا شيء طبيعي. يُرجى الإنتظار بعض الوقت وعدم القلق من هذا الأمر. سيتم الرد عليك في أقرب وقت ممكن، شكراً لتفهمك.
-
نأسف لذلك بشدة بشأن هذا الخطأ هذا مزعج لك طبعا. بخصوص هذا الأمر حول الأمور المالية يمكنك التواصل مع مركز المساعدة وتوضيح الأمر لهم وسيتم رد المبلغ بالتأكيد في أسرع وقت. شكرا لتفهمك..
- 3 اجابة
-
- 1
-
-
تحليل وشرح بالأرقام للمسألة في البداية الحلقة التكرارية for loop ستمر على كل الأرقام من 1 إلى 100 ولنجرب على الأرقام 1،3،5,15. الرقم 1 بداية الحلقة هل هذا الرقم أقل من 100 نعم سيتم الدخول للحلقة المتغير output يكون فارغا سيتم الدخول للشروط if (n % 3 == 0) output += "Fizz"; if (n % 5 == 0) output += "Buzz"; في كلا الحالتان الشرط لم يتحقق لأن هذا الرقم 1 باقى القسمة له لا يساوى 0 إذا ستكون النتيجة أنه سيدخل في أمر الطباعة output لأنها فارغة تكون false ويطبع الرقم. console.log(output || n); // 1 الرقم 3 بداية الحلقة هل هذا الرقم أقل من 100 نعم سيتم الدخول للحلقة المتغير output يكون فارغا سيتم الدخول للشروط if (n % 3 == 0) output += "Fizz"; if (n % 5 == 0) output += "Buzz"; الشرط الأول تحقق وباقي القسمة له على 3 تساوى صفر إذا يتم تنفيذ ما بداخل الشرط وهو إضافة الكلمة Fizz إلى القيمة الفارغة output وحفظها في المتغير output والشرط الثاني لم يتحقق لأن باقي قسمة هذا الرقم 3 على 5 لاتساوى 0 سيتم الدخول إلى أمر الطباعة ويطبع القيمة output وليس الرقم لأنه مادام يوجد قيمة output تكون true وسيتم طباعتها console.log(output || n); // Fizz الرقم 5 بداية الحلقة هل هذا الرقم أقل من 100 نعم سيتم الدخول للحلقة المتغير output يكون فارغا سيتم الدخول للشروط if (n % 3 == 0) output += "Fizz"; if (n % 5 == 0) output += "Buzz"; الشرط الأول لم يتحقق لأن باقي القسم لا يساوي صفر وسيتم الدخول للشرط الثانى وباقي القسمة له على 5 تساوى صفر فى هذه الحالة الشرط تحقق إذا يتم تنفيذ ما بداخل الشرط وهو إضافة الكلمة Buzz إلى القيمة الفارغة output وحفظها فى المتغير output سيتم الدخول إلى أمر الطباعة ويطبع القيمة output console.log(output || n); // Buzz الرقم 15 بداية الحلقة هل هذا الرقم أقل من 100 نعم سيتم الدخول للحلقة المتغير output يكون فارغا سيتم الدخول للشروط if (n % 3 == 0) output += "Fizz"; if (n % 5 == 0) output += "Buzz"; الشرط الأول تحقق وباقي القسمة له على 3 تساوى صفر إذا يتم تنفيذ ما بداخل الشرط وهو إضافة الكلمة Fizz إلى القيمة الفارغة output وحفظها في المتغير output ثم الدخول للشرط الثاني وباقي القسمة له على 5 تساوى صفر فى هذه الحالة الشرط تحقق إذا يتم تنفيذ ما بداخل الشرط وهو إضافة الكلمة Buzz إلى القيمة السابقة output وسيتم الدخول إلى أمر الطباعة ويطبع القيمة output console.log(output || n); // FizzBuzz فائدة الoutput في كل مرة يتم تكرار الحلقة تصبح القيمة فارغة وبناءا علي الشروط يتم تغيير قيمتها. كيف تم طباعة fizz buzz مع بعض؟ في جافاسكربت يتم تجميع السلسلة النصية عن طريق + أي نستطيع إضافة قيمة فارغة إلى نص ثم بعد ذلك نستطيع إضافة قيمة نصية إلى قيمة نصية أخرى وهو ماتم بناءا على الشروط تم إضافة fizz وحفظها فى output ثم تم الإضافة للقيمة السابقة buzz وحفظها فى output . المعامل =+ يسمى معامل الإسناد والجمع أي جمع القيمة الجديدة للقيمة السابقة للمتغير وحفظها (اسنادها) للمتغير أيضا.
-
في حالة كنت مشترك في أحد الدورات بالأكاديمية سيكون المسار الأول من كل الدورات مفتوح بشكل تلقائي تستطيع الوصول له إذا لم يكن مفتوحا يمكنك التواصل مع مركز المساعدة بخصوص هذا الأمر من هنا. وهذا هو المسار الأول من دورة الذكاء الاصطناعي أساسيات بايثون.
- 2 اجابة
-
- 1
-
-
مجال الدورة مجال متقدم بعض الشئ وبحاجة إلى سابق معرفة بالبرمجة أي شخص لديه إلمام بأساسيات البرمجة وعلوم الحاسوب، ولذلك دورة علوم الحاسوب في الأكاديمية هي الدورة المناسبة كبداية، فهي ليست خاصة بمجال معين بل للتأهيل لدخول مجال البرمجة. لكن في دورة الذكاء الاصطناعي كما تلاحظ في وصف الدورة فقد تم ذكر أنك ستتعلم كل ما تحتاجه من لغة Python لتطبيقات الذكاء الاصطناعي. ولا مشكلة في الإشتراك بدورة الذكاء الاصطناعي، لكن ستحتاج إلى فترة لكي تستوعب بعض الأمور بها، وفي البداية يتم شرح أساسيات لغة بايثون ثم شرح قواعد البيانات، لذا هي بها شرح جيد للأساسيات، لكن ستحتاج إلى البحث ودراسة بعض الأمور الأخرى خارج الدورة لكي تستوعب ما يتم شرحه. وفريق المدربين متواجد دائما للرد على أي مفهوم أو مشكلة واجهتك.
- 3 اجابة
-
- 1
-
-
في حالة أنك قطعت شوطا في تعلم الجافاسكربت وتعلمت أساسيات رياكت والتطبيق عليها، والأولوية لك هو أن تكون قادرا على بناء تطبيق جوال، يمكنك بعد ذلك الإنتقال إلى ريأكت نيتف لتتعلم من خلاله كيفية بناء تطبيق جوال، ويمكنك الإكمال لتعلم ionic مع ريأكت لبناء تطبيق جوال أيضا بدلا من الإنتقال بالكامل إلى فلاتر. يمكنك العودة طبعا واستكمال ما بدأته وبالنسبة للتحديثات يمكنك استخدام نفس الإصدار الذي يعمل به المدرب لكي لا تظهر لك أخطاء تعارض بعض الحزم ويمكنك بعد الإنتهاء مع المدرب وفهم أساسيات إطار العمل ريأكت نيتف والتطبيق عليه الإطلاع بعد ذلك على الإصدار الأخير ومعرفة التغييرات فيه والتطبيق عليه بمشاريع لزيادة مهاراتك وليس الإكتفاء بتطبيق طبيبي. بعد التطبيق على مشاريع وعمل أكثر من تطبيق جوال بنفسك يمكنك البحث عن عمل كمطور لتطبيقات جوال وفي نفس الوقت بالتوازى العودة لإستكمال تعلمك للويب وزيادة مهاراتك في إطار العمل نيكست والتطبيق عليه بمشاريع. بالتوفيق...
-
الدورة التي قمت بالتسجيل بها وتقوم بدراستها هي دورة تطوير التطبيقات باستخدام JavaScript وتسمى دورة. كل دورة صغيرة بداخلها يسمى مسار فأنت أتممت الآن مسار اساسيات لغة JavaScript. للتقديم للإمتحان يجب إتمام أربعة مسارات تعليمية على الأقل من الدورة (دورة تطوير التطبيقات باستخدام JavaScript ). أي إتمام ثلاث مسارات أخرى غير مسار اساسيات لغة JavaScript. ويتم الحصول على شهادة واحدة للدورة كاملة بعد النجاح فى الامتحان. الأفضل لك عدم دراسة 4 مسارات فقط والاستفادة من كامل الدورة لرفع مستوى مهاراتك. فالشهادة ليست مهمة في الواقع العملي المهم هو ما تستطيع تنفيذه والمهارات التي لديك ووجود معرض أعمال بجودة جيدة يثبت ذلك، الشهادة بمثابة دليل فقط على أنك اجتزت محتوى تعليمي معين. بالتوفيق...
- 4 اجابة
-
- 1
-
-
يمكنك الإطلاع على الصفحة التالية الامتحان والحصول على الشهادة بها كل شيء يتعلق بموضوع الشهادة و الإمتحان. الشروط التي يجب تحقيقها قبل التقدم للإمتحان: يمكنك التقدم إلى امتحان الدورة، من خلال التواصل مع مركز مساعدة أكاديمية حسوب، مع مراعاة الشروط التالية: إتمام أربعة مسارات تعليمية على الأقل من الدورة. التطبيق العملي مع المدرب، والاحتفاظ بالمشاريع العملية الناتجة لإرسالها للمراجعة. رفع المشاريع على حسابك على GitHub أولًا بأول لمشاركتها معنا. بالتوفيق.