-
المساهمات
6701 -
تاريخ الانضمام
-
تاريخ آخر زيارة
-
عدد الأيام التي تصدر بها
12
نوع المحتوى
ريادة الأعمال
البرمجة
التصميم
DevOps
التسويق والمبيعات
العمل الحر
البرامج والتطبيقات
آخر التحديثات
قصص نجاح
أسئلة وأجوبة
كتب
دورات
كل منشورات العضو عبدالباسط ابراهيم
-
بشكل مبسط الفرق بينهما أن الدالة map تأخذ كل عنصر في المجموعة وتطبق عليه دالة معينة، ثم تعيد مجموعة جديدة بنفس الحجم تحتوي على النتائج المحولة. بينما flatMap تعمل بخطوتين: أولاً تطبق دالة على كل عنصر (مثل map)، ثم تقوم بـ "تسطيح" النتيجة إذا كانت مصفوفات متداخلة ولتوضيح الفرق أكثر يمكنك الإطلاع على المثال التالي لflatMap const words = ["hello", "world"]; const letters = words.flatMap(word => word.split('')); console.log(letters); // ['h', 'e', 'l', 'l', 'o', 'w', 'o', 'r', 'l', 'd'] بينما لو استخدمنا map بدلاً من flatMap في المثال السابق: const letters = words.map(word => word.split('')); console.log(letters); // [['h', 'e', 'l', 'l', 'o'], ['w', 'o', 'r', 'l', 'd']] لاحظ كيف أن map أعطتنا مصفوفة من المصفوفات، بينما flatMap أعطتنا مصفوفة مسطحة واحدة.
-
ربما لا تحتاج لشرح لماذا تنتقل إلى تعلم Typescript من كثرة الفوائد التي ستعود عليك من تعلمها وكم هي مهمة ولكن ستكون قد اكتسبت مهارة مطلوبة جداً في سوق العمل والشركات التقنية الكبرى فحالياً تجاوزت شعبية TypeScript شعبية JavaScript في بعض المجتمعات، وأصبح الخيار الثاني عالمياً بعد JS مباشرةً . كما أنه إذا كنت قد أتقنت React، فستجد أن تعلم TypeScript لا يستغرق أكثر من أيام قليلة لتغطية الأساسيات (interfaces، types، generics) بالتالي، ينصح بشدة بإضافة TypeScript إلى مهاراتك بعد إتقان React.
-
يعتمد ذلك على المسارات التي قمت بتعلمها والمشاريع التي قمت بالتطبيق عليها سواء مع المدرب أو بمفردك . ولكن أعتقد أنك انتهيت من المسار تعلم الآلة Machine Learning ولذلك من المفترض أن لديك المهارات اللازمة للعمل في مجال الذكاء الإصطناعي مثل البدء في مشاريع حرة (Freelance) لتحليل بيانات بسيطة. استخدام تقنيات ML بسيطة في مشاريع حقيقية قبل إنهاء الدورة.
-
كما تعلم فإن react هي واحدة من أقوى أدوات تطوير الويب الحديثة، وتُستخدم في بناء مشاريع ضخمة ومعقدة على نطاق عالمي ولذلك يمكنك الوصول لمستوى تطبيقات احترافية بدون أي مشكلة . ولكن لا تحاول القفز للمشاريع المعقدة مباشرة. كل مشروع يبني على المعرفة السابقة ويضيف طبقة جديدة من التعقيد. خذ وقتك في فهم كل مفهوم جيداً قبل الانتقال للتالي. اصنع أكثر من إصدار لكل مشروع، وحاول تحسينه وإضافة ميزات جديدة. وعموماً يمكنك بناء منصة تدوين صغيرة تتضمن نظام تسجيل دخول، إنشاء وتحرير المقالات، التعليقات، والبحث. هذا المشروع يعلمك React Router للتنقل، Context API أو Redux لإدارة الحالة العامة، وكيفية التعامل مع الأذونات والأمان. ثم انتقل لمشروع متجر إلكتروني مصغر يتضمن كتالوج المنتجات، سلة التسوق، عملية الدفع، وحساب المستخدم. هذا المشروع يجمع كل ما تعلمته ويضيف مفاهيم جديدة مثل إدارة الجلسات (Session Management) وتكامل بوابات الدفع. أو نظام إدارة المشاريع (Project Management System) مشابه لـ Trello أو Jira المبسط. يتضمن إنشاء المشاريع، تعيين المهام، تتبع التقدم، والتعاون الجماعي. هذا المشروع يعلمك الهياكل المعقدة، إدارة البيانات المترابطة، والتحديثات الفورية.
-
ذلك لأن البعض لا يكتبون دائماً النص بنفس الطريقة. بعض الأشخاص قد يكتبون "Male" بحرف كبير في البداية، وآخرون قد يكتبون "MALE" بأحرف كبيرة كاملة، وغيرهم قد يكتبون "male" بأحرف صغيرة. هذا التنوع في طريقة الكتابة يخلق مشكلة في البرمجة. Python يتعامل مع النصوص بحساسية تامة للأحرف الكبيرة والصغيرة. هذا يعني أن الكلمة "Male" مختلفة تماماً عن "male" ولذلك نستخدم الدالة lower() فتقوم بتحويل أي نص إلى أحرف صغيرة فقط ولذلك لن تواجه الخطأ الخاص باختلاف حالة الحروف.
-
عموماً بشكل مبسط تخيل أن لديك مستطيل أو مربع، وتريد أن تحافظ على شكله النسبي حتى لو تغير حجمه. هذا بالضبط ما تفعله aspect-ratio - فهي تحدد العلاقة الثابتة بين العرض والارتفاع. مثال على ذلك .square { aspect-ratio: 1 / 1; /* أو يمكنك كتابة 1 فقط */ width: 200px; /* الارتفاع سيصبح 200px تلقائياً */ }
-
تحتاج أولاً قبل كتابة سطر واحد من الكود، فهم المشروع بشكل كامل أي ماذا سيفعل المشروع؟ حدد الميزات الأساسية التي يجب أن يقدمها مشروعك. ما هي المدخلات والمخرجات؟ كيف يتلقى المشروع المعلومات؟ وماذا يقدم كنتيجة مثال: إذا كنت ستبني تطبيق لإدارة المهام، فكر: هل سيحفظ المهام محليًا أم سيتطلب قاعدة بيانات؟ هل سيكون له واجهة مستخدم رسومية أم سطر أوامر؟ وبعدها في الخطوة التالية هي تقسيم المشروع لأجزاء صغيرة فيمكنك التفكير في مشروعك كوحدة متكاملة، ثم قسمه إلى أجزاء أصغر يمكن إدارتها بشكل منفصل. على سبيل المثال، في تطبيق إدارة المهام، قد يكون لديك جزء لإدارة المهام (إضافة، حذف، تعديل)، وجزء لتخزين البيانات، وجزء لواجهة المستخدم و بناءً على تقسيم المشروع ومتطلباته، يمكنك الآن تحديد اللغات، الأطر (Frameworks)، والمكتبات التي ستحتاجها لكل جزء. مثال: إذا قررت أن تطبيق إدارة المهام سيكون له واجهة ويب، قد تفكر في React أو Vue.js للواجهة الأمامية، وNode.js أو Python/Django للواجهة الخلفية، وPostgreSQL كقاعدة بيانات. ولا تقلق فمن خلال متابعة المدرب والتطبيق معه في المشاريع التي يتم بناءها ستتعلم الخطوات السابقة
-
هناك العديد من الأسباب التي جعلت react أكثر شعبية مقارنة ببقية أطر العمل فتعتبر React أسهل في التعلم لمن لديهم خلفية في JavaScript و HTML. لا تفرض عليك React الكثير من المفاهيم المعقدة في البداية كما أن كونها مكتبة توفر مرونة أكبر للمطورين لاختيار الأدوات والمكتبات الأخرى التي يرغبون في دمجها معها مع وجود عدد كبير من المكتبات والأدوات مثل nextjs و react native . ومن الأسباب التي جعلتها بهذه الشعبية هو تطوير شركة ميتا لهذه المكتبة واستخدامها من قبل الشركات الكبرى
-
للأسف لا يوجد ملخص للدورات الموجودة بالأكاديمية ولكن يمكنك الوصول لموسوعة حسوب والتي تضم توثيقات للغات وتقنيات برمجية عديدة من خلال الرابط التالي https://wiki.hsoub.com/Python ويمكنك البحث عن cheatsheet بالإضافة لاسم اللغة أو التقنية وسيظهر لك ملخص لما تريد
-
هل يمكنك توضيح الدورة التي تقصدها ؟ مع ذلك جميع الدورات الموجودة بالأكاديمية يتم تحديثها باستمرار، ويتم إضافة مسارات جديدة وتحديث المحتوى الحالي دوريًا فالإجابة هي بالتأكيد مناسبة ل 2025 وتكون متاحة لك مدى الحياة
-
بالتأكيد يوجد مشروع تخرج. وبالنسبة لبعض المسارات التي لم تفهمها عند التقدم للإختبار فسيتم توجيهك لمراجعتها مرة أخرى حتى تستطيع الحصول على الشهادة بعد إتمام مشروع التخرج . ولذلك للحصول على الشهادة تحتاج لإتمام الشروط اللازم توافرها ولا يتم منح الشهادة الخاصة بالدورات بدون التأكد من فهم وتطبيق المهارات التي تم شرحها
-
وعليكم السلام ورحمة الله وبركاته بناء موقع كامل يتطلب تعلم مجموعة من المهارات والأدوات في مجالات مختلفة. الأمر ليس سهلاً إطلاقاً فلتصبح مطور ويب شامل (Full-stack developer)، ستحتاج إلى تعلم أساسيات الواجهة الأمامية (Front-end) والواجهة الخلفية (Back-end)، بالإضافة إلى إدارة قواعد البيانات والنشر (Deployment) وبالإضافة لبعض الأدوات والمفاهيم الضرورية لأي مطور ويب . ولذلك إذا أردت الدخول لعالم الويب يفضل قبل أي شيء، فهم كيف يعمل الويب كيف يتواصل المتصفح مع الخادم؟ ما هو الـ IP Address، الـ Domain Name، والـ DNS؟ ما هي الـ URL والـ HTTP/HTTPS؟ ثم التعرف على المجالات بداخل مجال الويب من الإطلاع على التعليقات السابقة ويمكنك بعدها تحديد المجال الذي تريد تعلمه .
-
بالفعل إذا كان مشروعك بسيطًا ، أو كنت تبحث عن أسرع طريقة للبدء دون أي إعدادات، فإن JavaScript كافية تمامًا. أما إذا كنت تتوقع نمو المشروع، أو ترغب في الاستفادة من ميزات تحسين تجربة المطور والتحقق من الأخطاء مبكرًا، أو تتعلم عادات برمجة أفضل، فإن TypeScript يمكن أن يكون خيارًا ممتازًا حتى في المشاريع البسيطة. في النهاية، الأمر يعود إلى تفضيلك الشخصي وأهدافك من المشروع.
-
ملف الـ TSX هو بالفعل ملف TypeScript. واستخدام TSX يوفر بعض من المزايا، خاصة في المشاريع الكبيرة والمعقدة. وبالتالي إذا كنت تعمل على مشروع React أو مشروع واجهة أمامية آخر يستخدم JSX وترغب في الاستفادة من مزايا TypeScript، فستستخدم ملفات TSX.
-
بالتأكيد متابعة مشاريع react على اليوتيوب كافية و ستساعدك لكن بشروط يجب أن تفهم كل سطر كود تكتبه، لا تنسخ فقط حاول تعديل المشروع بعد انتهائك منه من خلال إضافة مميزات أخرى اختر مشاريع متدرجة الصعوبة بعد الإنتهاء من مشاريع لتقنية محددة وحاول دائماً التفكير حول كيفية تحليل المتطلبات وتقسيم المشروع حتى لا تعتاد الاعتماد على الآخرين في اتخاذ القرارات التقنية.
-
دورة علوم الحاسب تركز على المفاهيم النظرية مثل الخوارزميات، هياكل البيانات، أنظمة التشغيل، التفكير المنطقي، إلخ. وتقوي أساسك كمبرمج، مما يساعدك على فهم أي لغة أو تقنية بسهولة لاحقًا ولكنها لا تؤهلك مباشرة للعمل الحر أو تطوير مشاريع بسرعة. ولذلك إذا كان لديك الوقت أو لست مستعجلاً على الدخول لسوق العمل فالأفضل هو دراسة هذه الدورة أولاً . ويمكنك الإطلاع على المزيد من التفاصيل حول ما تفيدك به هذه الدورة
-
وعليكم السلام ورحمة الله وبركاته. بالفعل الجبر الخطي يستخدم مفاهيم من الجبر العادي ولذلك يفضل تعلم الأساسيات بشكل جيد مثل التي تم ذكرها في الإجابات التالية حيثبدون هذه الأساسيات، ستجد صعوبة في فهم المفاهيم المتقدمة كما أن خان أكاديمي خيار ممتاز، ولكن تأكد من إتقان كل مرحلة قبل الانتقال للتالية.
- 3 اجابة
-
- 1
-
-
هذه المشكلة لها العديد من الأسباب ولكن حاول التحقق من الاتصال بالإنترنت جرب فتح مواقع أخرى للتأكد من عمل الإنترنت والتأكد من إذا كان هذا الموقع فقط الذي به المشكلة. تأكد أيضاً من عنوان الموقع فحاول مثلاً اذهاب من هذا الرابط حاول أيضاً مسح cache وcookies المتصفح أو جرب التصفح الخفي (incognito mode) أو جرب متصفح آخر لاستبعاد مشاكل المتصفح يرجى تجربة الخطوات السابقة وإخباري بالنتيجة حيث أن الموقع يعمل بشكل سليم
- 2 اجابة
-
- 1
-
-
الذكاء الإصطناعي والأدوات التي يتم ظهورها بشكل متسارع بالتأكيد تقوم بتغيير طبيعة عمل المبرمجين لتصبح أكثر ابتكارًا وتركيزًا على حل المشاكل، لكن لن تستبدلهم. ويعتبر هذا السؤال من الأسئلة الشائعة حالياً ومن الصعب الإجابة بشكل قاطع بما سيحدث في المستقبل ولذلك يرجى الإطلاع على الإجابات التالية
-
أعتقد أنك تقصد رفع المشاريع إلى github من اجل الاختبار وبسبب أن أحد شروط التقدم للامتحان والحصول على الشهادة هو رفع المشاريع بانتظام على GitHub أثناء الدورة فمن المفترض أن تقوم برفع المشاريع على ال github . كما أن ظهور مشاريعك في GitHub يعتبر بطاقة تعريف للمبرمجين. من خلال رابط حسابك، تظهر أكثر احترافية أمام أصحاب العمل أو العملاء المحتملين. ومن خلال ذلك أيضاً تعتاد على التعأمل مع github والذي يعتبر ضرورة بالنسبة للمبرمجين حالياً
-
عموماً بينما تعد الرياضيات (مثل الجبر وحساب المثلثات ومتجهات الرياضيات) مفيدة لتطوير الألعاب المتقدمة أو أدوار محددة، فإن المحركات مثل Godot (التي تستخدمها الدورة) تبسط الجوانب الرياضية المعقدة، ويمكنك تعلم ما تحتاجه أثناء تقدمك. وبالنسبة للدورة فلا تحتاج فعليًا إلى خبرة مسبقة في الرياضيات لبدء دورة تطوير الألعاب . فالدورة مصممة لتبدأ معك من الأساسيات، حتى لو لم تكن لديك أي خبرة سابقة في تطوير الألعاب.