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

كل الأنشطة

تحدث تلقائيًا

  1. الساعة الماضية
  2. اليوم
  3. وعليكم السلام ورحمة الله وبركاته. شركة Google وأغلب شركات البرمجة تفضل تسمية الكلاسات باستخدام نمط CamelCase لأسباب تتعلق بالقراءة والتنظيم والأسلوب المتبع في البرمجة. وإن سبب تفضيل ال CamelCase : سهولة القراءة: حيث ال CamelCase يجعل الكلمات في الاسم متصلة بدون فواصل (مثل underscores) ولكن كل كلمة تبدأ بحرف كبير مما يسهل تمييز الكلمات داخل الاسم بسرعة والتمييز بين مكونات اسم الكلاس. التوافق مع المعايير الشائعة: ففي العديد من لغات البرمجة مثل Java، JavaScript وغيرها تعتمد CamelCase أو PascalCase -حيث أول حرف كبير مثل في أسماء الكلاسات- كمعيار لتسمية الكلاسات وهو ما يجعل الكود أكثر تنظيم وقابلية للصيانة. تنظيم الكود ووضوح الأسماء: استخدام ال CamelCase في أسماء الكلاسات يساعد على جعل الاسم مركباً من كلمات متعددة لكن بدون فواصل مما يجعل الكود أنظف وأسهل للقراءة عند فحص الكود. Google وغيرها من الشركات اتبعوا هذه القواعد لأن ذلك يعزز التعاون بين الفرق البرمجية ويجعل قواعد التسمية واضحة ومعروفة للجميع. وعلى العكس يتم استخدام underscores مثل Binomial_Distribution والذي يعرف ب snake_case وهو شائع أكثر لتسمية المتغيرات أو الدوال في بعض اللغات مثل Python لكنه أقل استخداما لأسماء الكلاسات في بيئات مثل Java وJavaScript وGoogle البرمجية.
  4. السلام عليكم ليه Google بتفضل اسم الكلاس يكون CamelCase (زي BinomialDistribution) بدل Binomial_Distribution) ؟
  5. كل اللغات تنفع وكل لغة لها مميزات وعيوب وجميعها تجعلك مطور Backend فالأمر يعتمد على ما تريد التعامل معه فمثلا لغة CPP و RUST يستخدمو للتلاعب بالذاكرة واستخدامها بطريقة مثالية وتعلمها يحتاج للمعرفة ببعض علوم الحاسوب وليس البرمجة فقط. وللتطبيقات الضخمة تستخدم JAVA و C# فهي منتشرة بهذا المجال. وتستخدم python في التطبيقات المتوسطة وبعض برامج الذكاء الصناعي وذلك لانه يمكنك ربط الذكاء الصناعي والbackend بسهولة. و nodejs تستخدم للتطبيقات المتوسطة والصغيرة أيضا حيث يستخدموها مطورو JS حيث يمكنه عمل ال frontend وال backend معا. كما يوجد PHP فهي منتشرة ولديها مجتمعها ويحدث لها تطوير كثيرا وتوجد في سوق العمل العربي بشكل كبير. حدد هدفك واختار لغة ولا تتشتت كثيرا لانك لو تشتت فلن تتعلم شيئا تعلم بعمق ومن ثم يمكنك تغيير اللغة ان اردت لكن يفضل ان تختار اللغة المناسبة من قبل.
  6. انا بعرف Node js JavaScript ومتقنهم شو لغة يلي لح تخليني Back end engineer Java - Golang - python - rust - cpp
  7. لا لن يضرك ترك الواجهة الأمامية في شئ . الأفضل حاليا لك التركيز في مسار واحد وهو الواجهة الخلفية بما أنك قد أحبتت هذا المجال . وإذا أتقنت مجال الواجهة الخلفية بشكل كبير وأصبحت خبير فيه فإن الواجهة الأمامية لن تفيدك في شئ . ولكن حاليا الأفضل لك هو التركيز في لغة واحدة وليس أكثر من لغة حتى لا تشتت نفسك و حتى تستطيع أن تكتب الخبرة في لغة واحدة وتستطيع الحصول على وظيفة بها . أما لو ذاكرت أكثر من لغة لن تتقنهم بشكل كامل وستجد صعوبة في الحصول على وظيفة في أى منهم.
  8. لا، أبدًا ما يضرّك — طالما إنك فاهم أساسيات وعارف كيف تتعامل مع الـ Front لانك ستحتاجه في الـ Backend. إنك تحتاج فقط من frontend كـ Back-end Developer: معرفة بسيطة بـ HTML / CSS / JS (لفهم شكل الـ requests الاتية من الـ frontend). تكون قادر تتعاون مع الـ Front-end team بسهولة. و لكن في البداية اختر لغة واحدة (مثلاً Node.js). لتتعلم فيها بالتوفيق
  9. الأمر يعتمد على ما تريد ان تفعل فمثلا نفترض انك تريد ان تعمل كمستقل فيفضل ان تعرف الاثنتين بنفس الوقت وذلك لانه ياتي العميل بدون خبرة سابقة بالبرمجة ويريد منك عمل تطبيق او موقع او اي منتج هو يريده وعندما تعرف بالطرفين الواجهة الامامية والواجهة الخلفية فتستطيع عملهما كما انه لو اردت ان تنشئ شركة خاصة بك فيفضل ان تعرف الاثنتين معا بنفس الوقت وذلك لصناعة المنتج باريحية ويمكنك ادارته. اما لو اردت ان تعمل في الشركات فيمكنك الاختصاص في مجال واحد فقط مثل ال Backend فقط ففي البداية تعلم لغة واحدة او framework واحد فقط ولا تتشتت وذلك لفهم الاساسيات مثل ال Auth ال REST وقواعد البيانات ويمكنك تعلم اشياء متقدمة في الموضوع أيضا مثل ال Scaling وهو جعل التطبيق يتحمل عدد كبير من المستخدمين كما يمكنك تعلم ال microservices كمواضيع متقدمة وغيرها الخ. بالنسبة لاي لغة تبدأها فهي تعتمد على سوق العمل الذي تريد تدخل فيه فمثلا في عالمنا العربي لغة PHP منتشرة بشكل كبير وان كنت تريد ان تعمل على تطبيقات ضخمة فعليك ب JAVA او C# او Go فاختيار لغة ال Backend تعتمد على المشروع وعلى الشركة التي تعمل فيها كما انه تعتمد على المنطقة ففي بعض المناطق هنالك لغات مشهورة اكثر من مناطق اخرى. كما يجب عليك تعلم اساسيات قوية مثل الخوارزميات وهياكل البيانات DSA وهي يفضل تعلمها سواء كنت مطور Frontend او مطور Backend او مطور متكامل. حدد هدفك اولا ومن ثم اختر المناسب لك اكثر.
  10. انا صراحة تعبت من Front end و حابب ان اكون Back End developer من خلال Node.js bun.js python golang java هل اذا تركت فرونت اند سيضر بي سببي لترك فرونت اند هو لان فرونت اند ممل و متعب اما باك اند مريح ويوجد تعامل مع برمجة ب كامل
  11. اولا: تحقق من أن Bun يعمل فعلاً افتح Terminal داخل Vscode واكتب: bun --version إذا ظهر رقم الإصدار يعني أن Bun مثبت صح وموجود في PATH. ثانيا: اذا ظهر خطأ أضف المسار إلى PATH يدويًا عن طريق: اضغط على زر Start اكتب Environment Variables وافتح: “Edit the system environment variables” و في النافذة اضغط Environment Variables واخر خطوة هي User variables في حقل path اضغط edit اضغط New وأضف: C:\Users\<YourName>\.bun\bin اضغط OK في كل النوافذ. تأكيد العملية: اقفل VS Code وكل الـ Terminals، وافتح Terminal جديد واكتب: bun --version
  12. اين قمت بتنفيذ bun --version ؟ إذا كان في سطر الأوامر إذا يجب إغلاق vs code وإعادة تشغيله مرة أخرى حتى يتم تطبيق متغيرات البيئة ليعمل .
  13. اولا تحقق من داخل VS code بالترمينال اعمل: bun --version فان لم يظهر في ترمينال ال vs code يجب عليك اضافة bunJS لمتغيرات البيئة حيث ان متغيرات البيئة تجعل البرنامج يعمل في جميع الكمبيوتر في جميع الأقراص على عكس حين تضيفه لمكان واحد فقط مما يجعله يعمل في القرص المحمل به فقط. ولكي تضيفه لمتغيرات البيئة ابحث في الاعدادات عن Environment Variables. ومن ثم Edit the system environment variables وبعدها Environment Variables. واخر خطوة هي User variables في حقل path اضغط edit ومن ثم الصق عنوان bunJS الذي حملته سيكون شيئا مثل هذا: C:\Users\<YourName>\.bun\bin او على حسب المكان الذي حملته فيه. ومن ثم اعد تشغيل البرنامج وجرب مرة أخرى.
  14. انا نزلت bun.js وتحققت من bun --version وظهر لكن عند تشغيله لا يعمل
  15. بما انه تعلمت على مشاريع بسيطة يمكنك الان الانتقال الى انظمة أكثر تعقيدا من مشاريع بسيطة الى مشاريع متوسطة ويفضل ان تكون شيئا موجود في الحياة الواقعية بشكل اكثر مثل: ما يسمى بال Blog Website حيث يعمل النظام ان يسجل المستخدم ويمكنه انشاء منشورات ويعلقو وما الى ذلك واجعله مناسبا للSEO باستخدام ادوات مثل NextJS حيث سيوفر لك SSR بما انك تعرف في React و JS ويمكنك تطوير فيه مميزات كثيرة جدا مثل اضافة صور للمستخدمين او صور للمنشورات ويمكنك ان تضيف لوحة لمدير الموقع يمكنه انشاء مقالات والخ. حيث ان المشروع هذا يبدو بسيطا لكن يوجد فيه الكثير من التعقيدات ويمكنك اضافة مميزات كل ما تقدمت فبدايته قد تكون بسيطة لكنه تطبيق قابل للتوسع باضافة العديد من المميزات. يمكنك انشاء ايضا نظام تتبع التمارين الرياضة واظهار فيه احصائيات وجعل الأمر صعبا حاول ان تجعل فيه نظام مصادقة ايضا Auth وغيره من المميزات.
  16. يمكنك إنشاء مشروع مدونة شخصية : المشروع عبارة عن مدونة بسيطة يستطيه المستخدمين فيها أن يكتبوا أويعدلوا أو يحذفوا منشورات المدونة . والميزات الأساسية هي التسجيل وتسجيل الدخول للمستخدم وإنشاء منشورات وقسم التعليقات والبحث حسب الوسوم (Tags) أو المنشورات. يمكنك إنشاء مشروع خاص بعرض الطقس : المشروع عبارة عن تطبيق يعرض بيانات الطقس لمدن مختلفة مع إمكانية حفظ المدن المفضلة. والمميزات الأساسية هي البحث حسب المدينة وعرض الطقس الحالي والتوقعات وحفظ المدن المفضلة في قاعدة بيانات وحسابات للمستخدمين. يمكنك إنشاء مشروع خاص بإدارة المشاريع الصغيرة: المشروع عبارة عن تطبيق لتنظيم المشاريع والمهام بين الفريق . والمميزات الأساسية إنشاء المشاريع وتعين المستخدمين لها وإضافة وتعديل وحذف المهام وتعين أحد من الفريق لها .
  17. ممتاز بناء المشاريع والتطبيقات يساعدك على ترسيخ المعلومات وتوظيفها بشكل جيد. يمكنك التطور أكثر إلى مشاريع تتركز على الأمان وإدارة العلاقات بين البيانات. نظام المصادقة (Authentication System) ماذا تبني؟ تبني صفحة لتسجيل مستخدم جديد (Sign Up) وصفحة لتسجيل الدخول (Log In) وصفحة للخروج (Log Out). تتعلم فيها الكثير مثل: تشفير كلمات المرور (Hashing). استخدام الـ Tokens (مثل JWT) أو الجلسات (Sessions) لتحديد هوية المستخدم بعد تسجيل الدخول. تطبيق دردشة بسيط (Basic Chat App) تطبيق بسيط يسمح لعدة مستخدمين متصلين في نفس اللحظة بإرسال رسالة تظهر للجميع فورًا. تتعلم فيها الكثير مثل: تقنية WebSockets ، مفهوم التفاعل اللحظي (Real-time)، حيث يتم تحديث البيانات على الشاشة دون أن يضغط المستخدم على زر التحديث. بالتوفيق
  18. انا سويت مشاريع فول ستاك وهم Todolist App - Image gallery app Pintrest clone وبدي مشاريع للمبتدئين ماهي مشاريع
  19. أولا ارفع يدي انا منافسة بشرف بحيث لا اقوم بوضع عوائق امام المنافسين البعيدين او القريبين سواء ارض واقع او رقميا ولي اسلوبي في المبارزة مبارزة فكر العائق دون ان اكون انا العائق !! السؤال هو كيف بإمكاني ان اربح من هذه الاكاديمية برغم ان عندي أسلوب ساخر رقمي في فكرة اني حوت الشبكة العنكبوتية!! ولكن كيف بإمكاني ان اربح وكيف بامكاني ان انهض وانشر مقالات متنوعة واربح عليها مردود مادي حسب المتواجد عندكم !؟ الإجابة ايضا اني لربما عندي القدرات بعد عسكرية المنافسة الشريفة وتمني الخير ان اظهر محاكاة تمثيلية تخويف المنافسة غير الشريفة وعلى هذا سيظنون حسب طاقتي مثلا اني الشر كله وبالتالي كيف مبارزة السوق لحوت الشبكة العنكبوتية حوت الحياة ارض واقع او هذه محاكاة ساخرة !؟
  20. لا مشكلة في إستخدام ال AI أحيانا فهو يساعد كثيرا وأيضا يسرع الإنتاجية وتحسين المشروع . ولكن هذا الأمر للأشخاص ذوي الخبرة الكبيرة . ولكن إستخدام ال AI في بداية التعلم ليس أمرا جيدا بالمرة فهنا أنت لن تتطور ولن تستطيع التحسين من نفسك حيث المبرمج القوي هو الشخص الذي لديه القدرة على حل المشكلات والتفكير في أى مشكلة تواجهك وإكتشاف حل لها . ولكنك هنا تستخدم ال AI لذلك لن تتطور في تلك المهارة ولن تمتلك الخبرة الكافية وال AI ليس دائما يعطي الحل الأفضل أو الصحيح . لذلك الأفضل دائما هو أنك انت من تفكر وتقوم بإنشاء الفكرة وبعد ذلك تعرضها على ال AI ليحسنها لك أو يقترح فكرة افضل وهنا أنت تقارن بين أفكارك وستتعلم كثيرا. أما بخصوص التصميم فلا مشكلة في الإستعانة بالذكاء الإصطناعي فهو أفضل في هذا الجزء وسيوفر الكثير جدا من الوقت عليك . لذلك لا تستعين بالذكاء الإصطناعي دائما إلا بعد أن تجد نفسك قويا ولديك القدرة على حل أى مشكلة تواجهك حينها ستستيطع إستخدام الذكاء الإصطناعي بالطريقة الأفضل لك .
  21. كما نعلم انه لا يوجد انسان يعرف كل شيء فكلنا لدينا اخطاء ونقص وكمبرمج نعتمد على البحث في عمل فكرة معينة وهذا لا يعيبنا لكن المشكلة في الذكاء الصناعي تجعلنا لا نفكر بل تجعلنا نطبق ولا نطور مهاراتنا فبعض الاحيان لن ينفعنا الذكاء الصناعي في عمل مميزةمعينة ويجب علينا فعل المميزة بأنفسنا وبسبب اعتمادنا الكبير على الذكاء الصناعي تقل قدرتنا على حل المشاكل مما يجعلنا عالقين. ما ينصح به هو محاولة تفكيك الفكرة بنفسك ومن ثم الاعتماد على الذكاء الصناعي فمن لا يستخدم الذكاء الصناعي هذه الأيام قد يخسر الكثير من الوقت لكن لا نجعل الأمر يسيطر علينا بالكامل بل نستخدمه كمساعد وليس كأساس في جميع الأشياء. جرب تطبيق أشياء بدون مساعدة الذكاء الصناعي وحلل المشكلة في حال اضعت الكثير من الوقت اعتمد على الذكاء الصناعي كي يساعدك وبهذه الحالة نكون استخدمنا عقلنا وطورناه واستخدمنا الذكاء الصناعي لتسريع الوقت. وأيضا يعتمد الأمر على ما تريد تحقيقه فمثلا كطالب او كمتعلم لا ينصح بالذكاء الصناعي وذلك كي نتعلم حل المشكلة لكن في حال كنا نعمل لدى عميل ويحتاج التطبيق بسرعة فنحن في حاجة لاستخدام الذكاء الصناعي وذلك لتوفير الوقت.
  22. انا اقوم ب انشاء مشاريع فول ستاك لكني استخدم AI دائماً في مساعدتي ب حل مشكلات + توليد افكار + تصميم + مساعدتي ب انشاء شيء معين لا اعلم كيف انجزه لكن بالطبع كل سطر كود يقوم AI ب توليده افهمه ويمكني تعديل عليه لكني اواجه مشاكل مع نفسي عندما اتعاون مع AI والتي هي اشعر ب ضعف لان AI قام ب مساعدتي ولست انا من قام ب انشاء مشروع من 0 الى 100
  23. نعم يمكنك في كثير من الحالات الاستغناء عن Node.js واستخدام Bun.js كبديل ولكن هذا الأمر يعتمد على حجم مشروعك ومتطلباته حيث ان Bun.js مصمم ك"drop-in replacement" بديل يمكن إستخدامه مباشرة ل Node.js مما يعني أنه يدعم معظم ال APIs الخاصة بـ Node.js مثل fs و path وBuffer بالإضافة إلى توافق مع حزم npm دون تعديلات كبيرة. ومع ذلك قد تواجه بعض المشاكل والصعوبات في التوافق الكامل وذلك خصوصا في المشاريع الكبيرة أو تلك التي تعتمد على مكتبات غير مدعومة تماماً. ونعم إن Next.js الإصدار 16 صالح حاليا للاستخدام في بيئة الإنتاج فقد تم إصداره رسمياً كإصدار مستقر في 21 أكتوبر 2025 وهو ليس في مرحلة الbeta أو التطوير. ويُوصى به حاليا للمشاريع الجديدة والحالية.
  24. هل يمكنني استغناء عن Node.js واستخدم bun.js وأيضاً هل Next.js v16 صالح حالياً للاستخدام ام مازال في مرحلة تطوير
  25. البارحة
  26. ستجد أسفل فيديو الدرس صندوق للتعليقات كما هنا يرجى طرح سؤالك أسفل الدرس وليس هنا حيث هنا قسم الأسئلة العامة ولا نقوم بإجابة الأسئلة الخاصة بمحتوى الدورة أو الدرس، وذلك لمعرفة الدرس الذي توجد به مشكلتك و لمساعدتك بشكل أفضل. وعموما ستجد المرفقات في أول درس في بداية المسار أسفل الفيديو.
  27. اريد ان اسال اين توجد الملفات المرفقة للفيديوهات
  1. عرض المزيد
×
×
  • أضف...