-
المساهمات
6972 -
تاريخ الانضمام
-
تاريخ آخر زيارة
-
عدد الأيام التي تصدر بها
13
نوع المحتوى
ريادة الأعمال
البرمجة
التصميم
DevOps
التسويق والمبيعات
العمل الحر
البرامج والتطبيقات
آخر التحديثات
قصص نجاح
أسئلة وأجوبة
كتب
دورات
كل منشورات العضو عبدالباسط ابراهيم
-
وعليكم السلام ورحمه الله وبركاته. بالتأكيد يتم المساعدة في حل المشكلات التقنية من قبل المدربين وأعضاء الأكاديمية . ولكن الأسئلة الخاصة ب الإمتحانات والاختبارات لا يتم الإجابة عليها وإنما يتم المساعدة في حلها
- 5 اجابة
-
- 1
-
-
دورات حاسوب وبالأخص دورة تطوير التطبيقات بواسطة جافاسكريبت قوية جدًا ، وتمنحك المهارات المطلوبة للحصول على عمل ولكن بعد الإنتهاء من الدورة بالتأكيد ستقوم ب التعمق في بعض المفاهيم كما يجب عليك بناء مشاريع حقيقية أخرى نشر مشاريعك وكتابة سيرة ذاتية + ملف أعمال (Portfolio). وما سبق سيتم مساعدتاك به بعد الحصول على الشهادة
-
الطريقة التي تصفها لحفظ الملفات في formData ثم نقلها إلى Laravel في الـ back-end هي طريقة صحيحة وشائعة جدًا للتعامل مع تحميل الملفات كما تم الشرح . ولكن بالنسبة للسؤال هل fetch و XMLHttpRequest و ajax هم نفس الشيء أم أحدهم أفضل من الآخر؟ هؤلاء الثلاثة مرتبطون، لكنهم ليسوا نفس الشيء تمامًا أولاً XMLHttpRequest هو كائن API في المتصفح يسمح لك بإجراء طلبات HTTP من JavaScript وكان هو الطريقة الأساسية لإجراء طلبات "Ajax" قبل ظهور fetch. يعمل على أساس callbacks التي يمكن أن تجعل التعامل مع التعليمات البرمجية غير المتزامنة أكثر تعقيدًا ما يسمى بـ callback hell بدون استخدام الـ Promises. ثانياً fetch هو واجهة برمجة تطبيقات حديثة وPromise-based لإجراء طلبات HTTP في المتصفح ويعتبر بديلاً أكثر حداثة وسهولة في الاستخدام لـ XMLHttpRequest. يستخدم الـ Promises مما يجعل التعامل مع التعليمات البرمجية غير المتزامنة أكثر وضوحًا وقابلية للقراءة باستخدام async/await ويتمتع بمرونة أكبر في التعامل مع رؤوس الطلب والاستجابات. بينما ajax ليس تقنية محددة مثل fetch أو XMLHttpRequest بل مفهوم أو تقنية عامة لإنشاء تطبيقات ويب ديناميكية تتواصل مع الخادم في الخلفية دون الحاجة إلى إعادة تحميل الصفحة بالكامل. تاريخيًا، كان XMLHttpRequest هو الأداة الرئيسية لتنفيذ Ajax. الآن، يمكن تنفيذ Ajax باستخدام fetch API أو XMLHttpRequest أو مكتبات مثل Axios أو jQuery's $.ajax().
-
توجد بالفعل عدة أدوات ومشاريع مفتوحة المصدر توظف الذكاء الاصطناعي والتعلم الآلي لتعزيز الأمن السيبراني واكتشاف التهديدات وحماية الشبكات والأنظمة بشكل أكثر فعالية كم اتم ذكر العديد من المشاريع في التعليقات السابقة . فيمكنك أن تجد تأثير الذكاء الاصطناعي في مجال الأمن السيبراني كبير فمثلاً تساهم خوارزميات التعلم الآلي والنماذج العميقة في التعرف على أنماط الهجمات المعقدة بشكل أفضل من القواعد الثابتة، فتستطيع التفريق بين السلوك العادي والتصرفات الخبيثة بنسبة خطأ أقل بكثير كما يتيح الذكاء الاصطناعي أتمتة عمليات المراقبة والتحليل لاكتشاف الهجمات خلال جزء من الثانية، مما يقلل من زمن الاستجابة ويمكن للأنظمة الذكية تنفيذ إجراءات استباقية، مثل عزل الأجهزة المشبوهة أو حظر عناوين IP ضارة تلقائيًا، دون تدخل بشري مباشر، مما يعمل على تقليل العبء على فرق الأمن السيبراني وزيادة فعالية العمليات
-
وعليكم السلام ورحمة الله وبركاته. دائماً ابدأ بمعالجة القيم المفقودة الأول حيث يعتبر ذلك الـ best practice المتفق عليه في مجال Data Science نظراً للأسباب التالية أولاً معظم خوارزميات استخراج الميزات لا تستطيع التعامل مع القيم المفقودة وأدوات القياس المعياري تظهر أخطاء عند مواجهة القيم الفارغة كما أن العمليات الإحصائية كحساب المتوسط والانحراف المعياري تتأثر سلباً بوجود القيم المفقودة والعديد من الأسباب الأخرى.
- 7 اجابة
-
- 1
-
-
وعليكم السلام ورحمة الله وبركاته. ستجد أسفل فيديو الدرس صندوق للتعليقات كما هنا يرجى طرح سؤالك أسفل الدرس وليس هنا حيث هنا قسم الأسئلة العامة ولا نقوم بإجابة الأسئلة الخاصة بمحتوى الدورة أو الدرس، وذلك لمعرفة الدرس الذي توجد به مشكلتك و لمساعدتك بشكل أفضل.
-
تبدأ دورة تطوير واجهات المستخدم بالأساسيات للغات HTML, CSS, JavaScript لضمان فهم عميق للمفاهيم، ثم تنتقل إلى استخدام أطر العمل والأدوات لمساعدتك على بناء مشاريع واقعية بكفاءة. هذا النهج يضمن أن تكون مطور واجهات مستخدم قادرًا على فهم الكود وتعديله وتخصيصه بفعالية، بدلاً من مجرد استخدام قوالب جاهزة دون فهم جوهرها. ويمكنك الإطلاع على المحتوى كاملاً للدورة من خلال الرابط التالي https://academy.hsoub.com/learn/front-end-web-development/#course-list
- 4 اجابة
-
- 1
-
-
كما تم التوضيح فإنه يمكنك إضافة تباعد بين السطور (line spacing) عبر استخدام خاصية line-height ولكن إذا كنت تستخدم إطار عمل مثل Bootstrap في موقعك، فبإمكانك الاستفادة من فئات مسافات النص الجاهزة (مثل .lh-lg لزيادة line-height، وفئات الهوامش .mb-3، .pb-4 وغيرها) بدلًا من كتابة CSS من الصفر. <p class="lh-lg"> ... </p>
-
يمكنك بالتأكيد منح كل مستخدم اسم نطاق فرعي يبدأ باسمه ثم عنوان تطبيقك (على سبيل المثال: username.yourapp.com). هذا نمط شائع تستخدمه العديد من التطبيقات والمنصات حيث لا توجد حدود لعدد الأسماء الفرعية ويعتمد الأمر أيضاً على مزوّدي خدمة الإستضافة. يمكنك إنشاء نطاقات فرعية ديناميكياً كما تريد مثل ahmed.myapp.com sara.myapp.com mohammed.myapp.com عن طريق ال Wildcard DNS حيث تقوم بإعداد wildcard record (*.myapp.com) يوجه كل النطاقات الفرعية إلى خادمك ثم يقوم تطبيقك بتحليل اسم النطاق الفرعي ويعرض المحتوى المناسب
- 6 اجابة
-
- 1
-
-
في بعض الدروس لا يكون هناك تمارين خاصة بها مثلا الدروس النظرية وبعض الدروس التي تكون حول مفهوم واحد و مقسمة لعدة فيديوهات لذلك يتم شرح هذه الفيديوهات ثم إعطاء التمارين للتطبيق . كما انه يمكنك ملاحظة أن التركيز في التطبيق العملي في الأكاديمية على المشاريع الواقعية حتى تكتسب خبرة فعلية تساعدك على الدخول لسوق العمل بكفاءة . ثانياً يمكنك بعد كل درس طلب بعض التمارين على الدروس من خلال تعليق مثل التعليق الحالي ولكن أسفل الدرس وسنقوم بتوفير تدريبات خاصة بالدرس
-
وعليكم السلام ورحمة الله وبركاته. ستجد أسفل فيديو الدرس صندوق للتعليقات كما هنا يرجى طرح سؤالك أسفل الدرس وليس هنا حيث هنا قسم الأسئلة العامة ولا نقوم بإجابة الأسئلة الخاصة بمحتوى الدورة أو الدرس، وذلك لمعرفة الدرس الذي توجد به مشكلتك و لمساعدتك بشكل أفضل.
-
انتشار MCP السريع يعود لعدة أسباب جوهرية ومنها حل مشكلة حقيقية حيث قبل MCP، كان ربط نماذج الذكاء الاصطناعي بالأدوات الخارجية يتطلب برمجة مخصصة لكل أداة. تخيل لو كان عليك تعلم لغة مختلفة للتحدث مع كل شخص تقابله - هذا ما كان يحدث تقنياً. ولا يعتبر MCP بديلاً عن APIs، بل يعمل كطبقة تغليف لها. يمكن لـ MCP Server استخدام APIs التقليدية داخليًا، مما يتيح للنموذج الذكي التفاعل معها بطريقة موحدة وديناميكية دون الحاجة لمعرفة تفاصيل كل API على حدة.
- 3 اجابة
-
- 1
-
-
يمكنك البحث في اليوتيوب وستجد الكثير من الدورات والفيديوهات التي تشرح بناء هذه التطبيقات ولكن غالباً ستجد ذلك باللغة الإنجليزية ومع ذلك حاول البحث عن Currency Converter react بدلًا من البحث عن تطبيق تحويل عملات React وأيضاً Real-time Chat Application . ولكن يجب مراعاة التدرج في الصعوبة والتأكد أيضاً من استخدام التقنيات التي قمت بتعلمها فقط
-
أعتقد أنك تقصد بعد التطبيق بنفسك على الدرس هل يوجد ما يمكن تنفيذه للإستفادة بشكل أكبر . ولذلك حاول دائماً التأكد من فهم كل خطوة ولماذا تم عملها في كل درس وعند التطبيق مع المدرب وحل التمرين بنفسك حاول حل مسائل مشابهة بنفسك دون النظر للحل ويمكنك أيضاً إختبار فهمك بحل تمارين إضافية سواء بطلب ذلك من المدربين من خلال ترك سؤال أسفل الفيديو أو بالبحث عن أسئلة تناسبك المفاهيم التي تعلمتها وحاول دائماً طرح أسئلة على نفسك: "ماذا لو تغير الرقم؟" أو "ماذا لو كان السؤال مختلف قليلاً؟" حتى تستطيع أن تصل لمرحلة حل المسائل دون الرجوع للملاحظات أو الدروس
-
كما تم التوضيح أنه يلزمك فقط المشاريع العملية الكاملة ولكن يعد حفظ الأكواد للتمارين البسيطة مهمًا حيث بدلًا من البحث عن الأكواد في الدورات أو الملاحظات، يكون لديك مستودع شخصي خاص بك يضم كل الأكواد الهامة التي كتبتها أو تعلمتها. هذا يوفر وقتًا ثمينًا عند الحاجة لتذكر مفهوم معين أو طريقة تنفيذ شيء ما. كما أنه في بعض الأحيان بالعودة إلى أكوادك القديمة، يمكنك تطبيق مفاهيم جديدة تعلمتها (مثل تحسينات الأداء، كتابة أكواد نظيفة، أو استخدام أنماط تصميم أفضل) لجعل تلك الأكواد أكثر كفاءة وقابلية للصيانة. هذا يعزز فهمك للمفاهيم بشكل عملي.
-
أولاً TypeScript تتفاعل بشكل طبيعي مع HTML و CSS. بالرغم أن المتصفحات لا تفهم TypeScript مباشرة فيتم تحويل (compiling) كود TypeScript إلى كود JavaScript عادي. هذا الكود JavaScript الناتج هو ما يتم تشغيله في المتصفح ويتفاعل مع HTML لتعديل محتوى الصفحة وبنيتها، ومع CSS لتطبيق الأنماط والتصميم. وبالنسبة لاستخدام TypeScript والتخلي عن JavaScript فلا يكون في جميع الحالات بينما في المشاريع الكبيرة والمعقدة عندما يزداد حجم مشروعك وتزداد تعقيداته، يصبح من الصعب تتبع أنواع البيانات المحتملة والأخطاء. هنا، تقدم TypeScript نظامًا قويًا للتحقق من الأنواع يساعد على اكتشاف الأخطاء مبكرًا ويجعل الكود أكثر قابلية للصيانة. والعديد من الحالات الأخرى التي تبرز بها مميزات TypeScript
-
يوجد العديد من الخيارات مثل Firebase Authentication والتي توفر واجهة برمجة تطبيقات (API) بسيطة ومباشرة لتنفيذ المصادقة عبر رقم الهاتف، مما يوفر عليك الوقت والجهد في الإعداد والتكامل كم اتدعم بشكل كامل NestJS و Next.js و React Native، وتوفر Firebase خطة مجانية تكفي للمشاريع الصغيرة. على الرغم من وجود خيارات أخرى مثل Twilio فإنها تتطلب مجهودًا إضافيًا للإعداد مقارنة بـ Firebase، خاصة مع التكامل السلس الذي يوفره Firebase مع تقنيات مشروعك. وخدمات مثل Auth0 أو Okta قد تكون أكثر تعقيدًا ومناسبة لمشاريع أكبر تحتاج إلى حلول متقدمة.
- 3 اجابة
-
- 1
-
-
أهم ما توضحه الدورات تطوير واجهات المستخدم و تطوير تطبيقات جافاسكريبت أن المجال frontend ليس بالمجال السهل والذي يمكن تعلمه في عدة أشهر بسيطة ولذلك يجب العلم أن هذا المجال يحتاج لبذل جهد كبير واستثمار الكثير من الوقت . بدون أساس قوي في HTML/CSS والعديد من القنيات وأطر العمل الأخرى ، ستواجه صعوبة في ترجمة التصاميم الحقيقية إلى واجهات متوافقة مع مختلف الشاشات والمتصفحات. وبالنسبة للتقنيات الحديثة (JavaScript + React/Next.js) فهي ضرورة اليوم في معظم الشركات الناشئة والمؤسسات. وفي الدورة تطوير تطبيقات جافاسكريبت تفترض غالبًا إلمامًا مسبقًا بأساسيات التصميم وبناء الواجهات. وبدون العرض الموجود حالياً من قبل الأكاديمية فيمكنك إختيار دورة جافاسكريبت حيث تعتبر دورة شاملة وكبيرة بالفعل وبالتزامن يمكنك تعلم تطوير الواجهات من خلال مصادر متعددة. ولكن حالياً فرصة جيدة بالنسبة لك حيث يمكنك الإشتراك في الدورتين بسعر دورة واحدة
- 4 اجابة
-
- 1
-
-
وعليكم السلام ورحمة الله وبركاته. لا يوجد دورة في الأكاديمية خاصة بإطار العمل reactjs فقط ولكن كما تلعم فيوجد دورة تطوير التطبيقات بواسطة جافاسكريبت والتي يمكنك بها دراسة إطار العمل مع التطبيقات عليه بدون التطرق للتقنيات الأخرى. كما يوجد قسم من المقالات خاص بإطار العمل react ويمكنك الوصول له من خلال هذا الرابط https://academy.hsoub.com/programming/javascript/react/
-
وعليكم السلام ورحمة الله وبركاته. تهانينا على إتمام الدورة وإن شاء الله المزيد من التوفيق والنجاح. بالنسبة لنسيان بعض المفاهيم فنحن لا نحتاج لحفظ كل شئ بالتفصيل بل نعتمد على الفهم ولكن إذا كنت تقصد نسيان مفاهيم في البرمجة أو تقنية ما فيفضل الرجوع لها بالطبع . والتطبيق على مشاريع كاملة هو أفضل طريقة لتثبيت المعلومات وتجنب النسيان. كما بناء المشاريع يساعدك على ربط المفاهيم النظرية بالتطبيق العملي، كما تكتشف أي المواضيع اللي تحتاج تراجعها ولاحظ أن إكمال مشروع يعطيك إحساس بالإنجاز ومحاكاة الواقع . ولذلك إذا كنت تقدر على التطبيق حالياً على مشاريع كاملة أو بسيطة فلا تتردد أو تتغافل عن التطبيق وإذا كنت تدون بعض المفاهيم أثناء الدراسة فسيكون من الجيد مراجعة هذه التدوينات. وأيضاً يمكنك البحث عن cheat sheet بجانب اسم التقنية أو لغة البرمجة وهو ملخص لما تريده . وبالنسبة للإختبار فيمكنك الإطلاع على التفاصيل التالية
- 2 اجابة
-
- 1
-
-
يوجد تمارين بسيطة على كل درس بالإضافة إلى المشاريع التي تكون على كل مسار ويوجد أيضاً مشاريع كاملة على مجموعة تقنيات ولغات برمجة ولكن ليست كل الدروس لها تمارين فهناك دروس نظرية ويكفي الفهم لهذه المفاهيم التي يتم شرحها فقط وليس هناك حاجة لتمارين على كل درس. بالطبع يمكنك استرجاع المبلغ الذي دفعته في حالة لم تحصل على عمل بعد الإنتهاء من الدورة أو إذا كانت هناك مشكلة مثل أن الشرح لم يعجبك في هذه الحالة يمكنك التحدث مع مركز المساعدة للتأكد . وعندما تشترك في أي دورة فستدفع التكلفة مرة واحدة فقط ولديك وصول لها مدى الحياة يعتمد ذلك على أهدافك وما المجالات التي تريد العمل بها بجانب الذكاء الإصطناعي فمثلاً يمكنك الإشتراك في دورة مثل تطوير واجهات المستخدم للعمل في الويب ك frontend أو أي دورة من دورات ال backend . والأفضل أيضاً دورة علوم الحاسوب إذا لم يكن لديك خبرة سابقة بالمجال فهي تقدم لك أساسيات مهمة وضرورية في أي مجال من مجالات علوم الحاسوب وبالنسبة للأسئلة الأخرى فتمت الإجابة عليها بالتفصيل في الروابط التالية
-
لتوضيح أهمية ال min-height افترض أن لديك مجموعة من البطاقات (cards) في صفحة، كل بطاقة تحتوي على عنوان، صورة، ووصف. بعض الأوصاف قد تكون قصيرة جدًا، والبعض الآخر قد يكون طويلًا. فإذا استخدمت height ثابتًا، فإن البطاقات ذات الأوصاف القصيرة ستبدو فارغة من الأسفل، والبطاقات ذات الأوصاف الطويلة ستتعرض لتجاوز المحتوى. باستخدام min-height على البطاقة أو على قسم الوصف بداخلها، تضمن أن جميع البطاقات لها حد أدنى من الارتفاع (مما يجعلها تبدو متناسقة)، ولكنها تتمدد تلقائيًا لاستيعاب الأوصاف الطويلة، مما يمنع التجاوز.
-
بالفعل مع التطور المتسارع للذكاء الاصطناعي (AI) يجب علينا بدلاً من التركيز بشكل أساسي على كتابة الكود من الصفر، قد تصبح قراءة الكود وفهمه وحل المشكلات المهارات المحورية للمبرمجين في المستقبل. ولكن ذلك يكون بالنسبة للمطور ذو خبرة فعلية ي البرمجة وليس لمن يبدأ مسيرته التعليمية في البرمجة . وبالنسبة لتعلم البرمجة حالياً يجب أن يعزز تعليم البرمجة فهمًا عميقًا لمبادئ علوم الكمبيوتر، وهياكل البيانات، والخوارزميات، والتفكير المنطقي ولكن لا يتم إهمال الكود في بداية التعلم بل يفضل لو يتم الإبتعاد عن أدوات الذكاء الإصطناعي في البداية ( في حالة كتابة الكود بدلاً منك) يفضل الإطلاع على التعليقات التالية
- 3 اجابة
-
- 1
-
-
لا تقلق أبدًا إذا لم تنجح في اختبار الدورة من المرة الأولى! يمكنك خوض الاختبار أكثر من مرة حتى تجتازه وتحصل على الشهادة وسيُرشدك المدرب المسؤول على الأخطاء لديك لتخطيها و التواصل مجددًا لإجراء الإمتحان مرة أخرى. ولكن يجب عليك إتمام الشروط الخاصة بالتقدم للإختبار والحصول على الشهادة والاستعداد بشكل جيد للإختبار
-
في المكون Prayer لم تقم بتعريف الكائن props حتى تستطيع تمرير المعاملات name وtime ولذلك يرجى تعديل المكون Prayers كالتالي export default function Prayer(props) { return ( <div> <p className="name-prayer">{props.name}</p> <p className="time-prayer">{props.time}</p> </div> ) } يمكنك أيضاً استخدام الطريقة destructuring كما أعتقد أنك أردت ذلك ولكن يجب إضافة المعاملات name وtime بداخل { } لتصبح كالتالي export default function Prayer({ name, time }) { return ( <div> <p className="name-prayer">{name}</p> <p className="time-prayer">{time}</p> </div> ) }
