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

عماد شيخ العشرة

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

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

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

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

    2

كل منشورات العضو عماد شيخ العشرة

  1. وعليكم السلام, يوجد العديد من الخيارات حيث انه يوجد الكثير من قواعد البيانات المشهورة تعمل مجانيا على حاسوبنا بشكل مجاني منها PostgreSQL او MySql ويوجد خادم قاعدة بيانات غير علاقية NoSQL مثل MongoDB كما انه يوجد قواعد بيانات خفيفة لا تحتاج إلى خادم مثل SQLite. ويمكن تنزيلها عن طريق قوقل ابحثِ بالاسم وسوف تظهر فالأمر يعتمد على ما تريديه اي نوع قاعدة بيانات.
  2. وعليكم السلام, في أكاديمية حسوب لا يوجد لدينا شهادات مجانية خاصة بلغات البرمجة لكن لدينا شهادة بعد الالتحاق بالدورات واجتياز الامتحان وبعد الحصول على الشهادة فريق حسوب سوف يساعد بالحصول على العمل في حال لم تجدِ عمل خلال ٦ اشهر يتم التواصل مع مركز المساعدة ويتم إرجاع ما تم دفعه. الدورات تعتمد على الخبرة العملية وعمل المشاريع التي قد تفيد في سوق العمل.
  3. مع الأسف يجب رفعهم ال github حيث انه من الأفضل لك وذلك عند التقديم للأعمال فسوف يظهر كمشروع تم عمله.
  4. وعليكم السلام, يمكنكِ بدء رفع المشاريع الان وهذا كي يتم تنظيمها فرفع الكثير من المشاريع مرة واحدة قد يسبب الازعاج وقد يلتبس علينا وننسى بعض المشاريع. المشاريع التي سيتم رفعها هي المشاريع الكبيرة الخاصة بكل مسار حيث سوف يتم السؤال عليها وماذا تعلمت كما يفضل رفع جميع الاشياء ما عدا الصغيرة منها جدا. وبعد خوض الامتحان والمحادثة الصوتية سوف يتم اعطاء واجب أو مشروع على ما درستيه مشابه لما تم تطبيقه لكي يتم التطبيق عليه فان تم عمله بنجاح فسوف تسلم الشهادة.
  5. إذا عليك البدئ اولاً بتطوير الواجهات الأمامية حيث سوف تتقن التصاميم وتطوير css مع js في الواجهات الأمامية ومن ثم يمكنك تعلم اطار عمل js للواجهة الأمامية وتعلم الواجهات الخلفية ايضا مع express.
  6. نعم هما كافيان لدخول دورة جافا سكربت ولا داعي للتعمق. الأمر يعتمد على ما تريد تحقيقه إن كنت تنوي أن تكون مطور واجهات امامية او مطور مواقع متكامل fullstack فابدأ بواجهات المستخدم ومن ثم انتقل لجافاسكريبت لتعلم إطار عمل مثل رياكت. ان كان هدفك هو ان تكون مطور واجهات خلفي فأنصح بتعلم جافا سكربت فهي مفيدة لك افضل.
  7. كافية لك كبداية كي تتعمق في ال JS بشكل أكبر في حال احتجت للتعمق سيكون بعد انهاء الدورة وليس قبلها حيث انك تتطور عندما تكون في سوق العمل.
  8. يجب دائما معرفة HTML و CSS قبل الدخول ل JS فهي عبارة عن اداة للتحكم بهما فهي معتمدة عليهم بشكل كبير ولا يمكن البدئ بدونهما. لكن لا تقلق فالأمر لن يستغرق منك الكثير من الوقت فلن تكون خبيرا بهما.
  9. هذا الشيء طبيعي جدا لكل مبتدئ في البرمجة حيث أنه في البداية لا يكون لدينا المنطق البرمجي اللازم لحل هذه المشكلة حيث ننظر للمشكلة على انها بسيطة وتافهة لكن في الواقع لا نستطيع حلها لكن الواقع انها ليست تافهة. مهارة البرمجة والتفكير المنطقي وتقسيم المشاكل الكبيرة الى مشاكل اصغر هي ما تساعدنا لتعلم البرمجة ونكون متمكنين في عملنا. ما يجب عليك فعله هو التالي: زيادة التمارين الذي نفعلها. عدم اليأس من الموضوع. ان كان التمرين بسيط لا يجب ان نقضي عليه اكثر من ساعة حيث انه غالبا لن تتمكن من حله بعد الساعة أيضا فخذ نظرة الى الجواب ومن ثم حاول كتابته من جديد أي يعني يجب عليك التقليد بعض الأحيان. مع الوقت والاستمرارية سوف تتطور المهارة البرمجية.
  10. إن دورة علوم الحاسوب في أكاديمية حسوب تشرح المواضيع باللغة العربية على عكس هارفرد ويتم الشرح بشكل مبسط كما انه يوجد بعض الفروق بين الدورتين حيث في دورة علوم الحاسوب في الأكاديمية تشرح أشياء لا تتواجد في cs50 مثل: أنظمة التشغيل ولينكس أنماط التصميم أساسيات هندسة البرمجيات إعادة تصميم البرمجيات وغيرها الكثير. حيث انها أعمق وتحيط بمواضيع أوسع من cs 50.
  11. يمكنك تخطيه إن أردت لكن ينصح به حيث انه يعلم المنطق البرمجي خاصة لمن يتعلم لأول مرة المنطق حيث يبني اساسيات مما يسهل عليك عملية التعلم في المستقبل وقد يختصر عليك الوقت.
  12. أن HTML لا تحسب كلغة برمجية فهي لا تحتوي على الشروط والحلقات التكرارية وغيرها الكثير من المنطق البرمجي مما يشكل لنا برنامجا كاملا بل هي لغة لاستعراض بعض العناصر في الشاشة.
  13. ان كان ليس لديك اي خبرة في مجال البرمجة وعلوم الحاسوب فأنا انصح به لانه يعلمك التفكير المنطقي حيث انه يبدو تافها في بادئ الأمر لكن واقعيا هو يعلم الكثير ويجعل تفكيرنا المنطقي والخوارزمي أقوى بكثير. ان كان لديك خبرة في علوم الحاسوب او البرمجة يمكنك تخطي هذا المسار فالامتحان يتطلب مننا ان نكمل ٤ مسارات مع رفع المشاريع الخاص بها إلى GitHub واخبار فريق المساعدة بأنك تريد ان تمتحن ويتم امتحان وسؤالك واعطائك مهمة معينة لانجازها في وقت معين ان استطعت اجتيازها فسوف تحصل على الشهادة. ولا يتطلب مننا ان نكمل مسارات محددة كما يفضل إتمام الدورة كاملة حيث ان سوق العمل تنافسي وقوي ويحتاج إلى الكثير من الخبرة.
  14. بالنسبة لدوراتنا فهي مخصصة للتعلم بالتدريج اي انه لا يتم شرح شيء إلا ويتم شرح قبل ما يتطلب لفهم هذا الدرس اي يعني انه إذا مشيت في الدورس تدريجيا فلن تواجه اي مشكلة ومجال الذكاء الصناعي كبير جدا حيث يوجد فيه الكثير من الرياضيات ولو اردنا التركيز على الرياضيات فقط قبل دخول المجال فقد نحتاج الكثير من الوقت ولا نكتسب خبرة عملية يمكنك متابعة الدورة بشكل طبيعي في حال وصلت إلى مكان معين لا تفهمه واحتاج الرياضيات يمكنك السؤال عنه وسيتم شرحه لك وكما قلنا سابقا دوراتنا تعتمد على العملي اكثر من النظري حيث النظري قد يسبب ضياع الكثير من الوقت قبل التعود على المجال وأخذ خبرة فيه.
  15. دمج الكائنات سيجعلهم قابل للوصول بشكل اسرع ويجعل الكود اكثر نظافة مما يسهل علينا القرائة فالكائنات المتداخلة صعبة الفهم وقد يصبح سلوك غير متوقع في كودنا بسبب عدم معرفة كيفية الوصول للكائن.
  16. الرجاء الاطلاع على السؤال التالي حيث انه تم الإجابة على عمل هذه الدالتين في مثال آخر. فمنطق الشيفرتين نفس ولم يتغير لكن ما فرق هو الأسماء.
  17. نعم تم تنزيله بنجاح. يمكنك متابعة الفيديو الذي ارفقته لك فهو يعلم الاساسيات.
  18. يمكنك تنزيله عبر الرابط التالي: https://git-scm.com/downloads كما اني ارفقت لك فيديو ومقالة تشرح الاساسيات ويوجد فيديو ايضا يمكنك الاطلاع عليهم.
  19. تعلم Git ليس بمضيعة بالوقت بل يمكنك استخدامه فهو يستخدم في جميع المشاريع البرمجية الكبيرة كانت ام الصغيرة وهو مفيد جدا اثناء التقديم للاعمال حيث يجب عليك معرفة الاساسيات ولا يجب عليك التعمق فيه في البداية بل معرفة الاساسيات ستساعدك في عمل مشاريعك وتنظيمها واصلاحها وتضيف مميزة يمكنك استعمالها في جميع فروع البرمجة حيث يستخدمها اغلب المبرمجين سواء مطور واجهة مستخدم او مطور واجهة خلفية او اي نوع من المطورين.
  20. الGit هو نظام تتبع اصدارات يُستخدم لتتبع التغييرات في الملفات والمشاريع البرمجية، خصوصًا تلك التي يعمل عليها أكثر من شخص. تخيل أن لدينا تطوير نطوره سواء كنت لحالك او مع فريق ونحن بالتطوير عادة ما نعمل كل مميزة منفصلة عن الاخرى في التطبيق فبعد ان انهيت مميزة ما وبدانا بتطوير ميزة ثانية فحصل اثناء تطوير الثانية خلل في الكود وخرب المشروع كله واصبحت شيفرتنا غير جيدة. هل سنعيد كتابة التطبيق من جديد؟! هذا غير ممكن فلذلك نستخدم ادوات تتبع المصدر مثل Git فبعد اتمام كل ميزة نحفظ التغيرات التي حصلت في الكود وفي حال اثناء تطوير الميزة التي بعد هذه خرب المشروع او خرب الكثير من الشيفرة فبامكاننا الرجوع الى الميزة التي قبلها ونستطيع ان نرجع الى الوراء بقدر ما نستطيع وليس اخر مميزة فقط. يمكننا استخدامها كفريق ايضا وهذا يكون كالتالي: تخيل ان مشروعنا هو عبارة عن خط وهذا الخط هو الميزة بعد الأخرى فلدي انا فريق عمل فاجعل كل شخص من فريق العمل ياخذ خط فرعي من خطنا الرئيسي ونجعل كل مطور يعمل على مميزته بشكل منفصل وبعد ان ننهي مميزتنا ندمجها الى التطبيق الفرعي. تحيل ان المشروع هو الاخضر وانت تعمل مميزاتك بالازرق وشخص اخر هو البرتقالي ويمكنك ايضا الاثنين تاخذو خط فرعي من نفس المكان. ان موقع Github هو بالواقع من احد تطبيقات Git حيث ان Git يكون للجهاز المحلي و github خدمة سحابية حيث مثلا لو كنا عدة مطورين فيمكننا اخذ الكود بعد دمج الميزة من قبل شخص اخر ومواصلة بمميزة انت ستعملها. بالنسبة لك كمطور فلا تحتاج المميزات المتقدمة من Github بل اكثر من يحتاج المميزات المتقدمة منه هم مطورين DevOps لكن يجب عليك كمطور معرفة أساسياته. ومن ناحية تعلمه يوجد لدينا الكثير من المقالات فيه. كما يوجد فيديو الاساسيات الخاصة فيه:
  21. الرجاء وضع سؤالك تحت الدرس الخاص به فهنا مكان الاسئلة العامة حيث نضع الاسئلة اللتي لا علاقة لها بالدورة. ستجد اسفل الدرس صندوق يمكنك وضع سؤالك هنالك.
  22. قلت لك المواضيع المستخدمة بكثرة في اول تعليق لكن هنالك الكثير فالتعلم لا ينتهي لكن ما عليك فعله هو بعد تعلمك لهذه الاشياء وعمل تطبيق فعلي واستخدامك لكل شيء فحين مواجهتك لمشكلة في الحياة الواقعية فمن المستحيل ان نكون ملمين بكل شيء خصوصا كمبتدئ لكن بالبحث وقرائة التوثيق الرسمي نحل مشاكلنا.
  23. نصيحتي هي ان لا تضيع وقتك بالكثير من الفيديوهات نعم يمكنك فتح مقال او متابعة فيديو سريعا وذلك لفهم الفكرة العامة للموضوع بعد معرفة الفكرة العامة وبم ولم تستخدم ثم فكر كيف أوظف هذه المعلومة في مشروع حقيقي وطبق عليها اولاً تدريب بسيط وذلك للتأكد هل أنا فهمت الفكرة وأقدر استخدمها او لا واذا قدرت على عملها انتقل للموضوع الآخر ومن بعد فهم الكثير من المواضيع اعمل مشروع يجمع كل المعلومات التي درستها وهذا ما يسمى مشروعا.
  24. في الواقع Redux هي مكتبة متخصصة ب JS وليس ل React فقط وهدفها تبسيط ال Context المستخدم في رياكت حيث انه الكثير من ال Context المتداخل في بعضه قد يجعل الشيفرة صعبة القرائة مثال: function App() { return ( <AuthProvider> <ThemeProvider> <LanguageProvider> <Dashboard /> </LanguageProvider> </ThemeProvider> </AuthProvider> ); } لكن مكتبة Redux تجعل الشيفرة قابلة للقرائة وجعل الشيفرة نظيفة ويمكنك تقسيم الشيفرة الى اجزاء ببساطة. تم تطوير من Redux بعض المكتبات وهي React redux ومكتبة redux toolkit لاستخدامها في رياكت خصيصا. المكتبة كبيرة نوعا ما وتحتاج شرح كثير لدينا بعض المقالات ان اردت الاطلاع عليها:
  25. إن مكتبة رياكت مكتبة واسعة وكبيرة وفيها الكثير من المفاهيم ولا تقتصر على هذه الأشياء فقط فيوجد بها الكثير. المهم بالموضوع هو معرفة كتابة أكواد نظيفة واستخدام الصحيح لكل الأدوات. إن كنت مهتما أكثر يمكنك التعرف على مواضيع مثل: useContext أو بديلها مكتبة Redux وتستخدم لعمل state يمكنك استخدامها في جميع المكونات. memo useMemo وتستخدم لتحسين الأداء قليلا. يمكنك تعلم اطار عمل NextJS حيث يساعد في ال SSR وينفع للتحسين في محركات البحث SEO. يمكنك تعلم كيفية استخدام TypeScript بدلا من JS في اطار عمل رياكت. بعد اتمام هذا وعمل مشاريع عليها اطلع اكثر فهنالك مكتبات مساعدة مثل Tanstack وغيرها ان كنت تريد التعمق في عالم رياكت وتصبح مطور واجهة أمامية مختص في رياكت. وكما اخبرتك سابقا المهم هو الشيفرة النظيفة ومعرفة استخدام المعلومات التي تعلمتها في بناء مشاريع حقيقية.
×
×
  • أضف...