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

عبدالباسط ابراهيم

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

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

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

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

    13

كل منشورات العضو عبدالباسط ابراهيم

  1. كمبرمج افترض أنه يمكن العمل في أي مكان في العالم، ولكن هناك بعض الدول التي تتمتع بسوق عمل جيد للمبرمجين وتوفر فرصًا عمل جيدة ورواتب مجزية. ومن بين هذه الدول: أفضل الدول للعمل في مجال البرمجة هي: الولايات المتحدة الأمريكية: مركز عالمي للتكنولوجيا والابتكار، وتوفر فرص عمل كثيرة في شركات التكنولوجيا الكبرى مثل Google وFacebook وMicrosoft. كندا: توفر بيئة مناسبة للمبرمجين مع إمكانية الحصول على الجنسية، وتوجد فيها شركات تكنولوجيا كبرى مثل Shopify. سنغافورة: مركز إقليمي للتكنولوجيا في جنوب شرق آسيا، وتنتشر فيها الشركات الناشئة التكنولوجية. ألمانيا: اقتصادها قوي وتحتاج لمبرمجين في قطاعات مثل السيارات والهندسة. الإمارات: توفر فرص عمل وأجور جيدة للمبرمجين، خاصة في مجالات مثل الذكاء الاصطناعي والبيانات الضخمة. المملكة المتحدة: مركز عالمي للتكنولوجيا يضم العديد من الشركات الناشئة وكبرى شركات التكنولوجيا. ولكن في النهاية يعتمد الاختيار على اهتمامات ومجال تخصص المبرمج والفرص المتاحة في كل دولة.
  2. حساب نصيبك عند الخروج من الشركة وبيع حصتك للشريك، يجب أولاً تحديد القيمة الإجمالية للشركة ولا يتطلب تقييم الشركة فقط الخبرة المالية، وإنما يتطلب أيضًا الخبرة في تحليل الأعمال المعايير المحاسبية التوقعات الاقتصادية العديد من العوامل الأخرى. ولذلك، فإن تقييم الشركة يتم عادة من قبل مستشارين ماليين أو خبراء في تقييم الشركات. لذلك، إذا كنت لا تمتلك الخبرة اللازمة في تقييم الشركات، فمن المستحسن الحصول على المساعدة من مستشار مالي أو خبير في تقييم الشركات لتحديد القيمة الحقيقية لشركتك.
  3. بجانب الإقتراحات السابقة يفضل حل مشكلة ال scroll الأفقي والعنصر الذي يسبب هذه المشكلة هما العنصران .row بداخل العنصر <section class="tours container-fluid my-5 show active" id="tours-section"> <h2 class="section-title mb-2 h1 mb-5">الجولات السياحية</h2> <div class="row no-gutters"><div class="col-10 offset-1 text-center"> ... </div> <div class="row no-gutters"> ... </div> </section> عند إضافة الصنف no-gutters للعنصر row يتم حذف ال margin الزائدة التي تجعل عرض الموقع أكبر من عرض الشاشة لذلك بعد التعديل السابق سيختفي ال scroll الأفقي كما أن هناك بعض التعديلات التي يفضل العمل عليها وهي تعديل الحجم الخاص بالأيقونات كما هناك مكتبات للأيقونات أفضل من الموجودة
  4. يفضل استخدام flexbox حيث يسهل عملية تنفيذ التخطيط الذي تريده كما في التعديل التالي ملف style.css body { margin: 0; } header h1 { margin: 0; background-color: #bb9144; color: rgb(43, 128, 226); text-transform: uppercase; } .navbar { background: #ddd; margin: 0; padding-left: 0; } .navbar li { padding: 20px; display: inline-block; text-transform: uppercase; color: black; border-right: 1px solid #bb4444; } .container{ display: flex; } .container .posts { width: 70%; padding: 20px; display: inline-block; } .container .aside { width: 30%; padding: 20px; background: #bb9144; } .container .posts .post { padding: 20px; display: flex; } .container .posts .post .img img{ width: 100%; } .container .posts .post .img { width: 40%; } .container .post .post .text { width: 80%; }
  5. == و += هي معاملات في لغات البرجة مثل لغة البرمجة جافاسكريبت. == هو عامل المساواة في لغة البرمجة JavaScript ويستخدم للتحقق من مساواة قيمتين. على سبيل المثال، إذا كانت قيمة متغير x تساوي 5، يمكن التحقق من ذلك باستخدام العبارة التالية: if (x == 5) { // Do something } في هذا المثال، يتم التحقق من مساواة قيمة x بقيمة 5. أما += في لغة البرمجة JavaScript، فهو عامل الجمع والتعيين المختصر. يستخدم لإضافة قيمة إلى متغير مع تعيين النتيجة إلى المتغير نفسه. على سبيل المثال، إذا كان لدينا متغير x يحتوي على القيمة 5، يمكن إضافة 3 إلى قيمة x باستخدام العبارة التالية: x += 3; وبعد تنفيذ هذه العبارة، سيحتوي المتغير x على القيمة 8 ومثال آخر أيضاً let a = 10; a += 5; // a is now 15
  6. نعم لديك حق فمهارات حل المشكلات مهمة جدا لأي مبرمج. و هنا بعض الخطوات التي تساعد في تقوية مهارة حل المشكلات في دورة أساسيات البرمجة: تضمين تمارين وأنشطة حل المشكلات بشكل أكثر من النظرية المجردة. تكليف الطلاب بمشاريع صغيرة يجب حلها على مراحل لتدريبهم على حل المشكلات في العالم الحقيقي. يرجى قراءة النقاشات التالية
  7. هناك العديد من المواقع والدورات التي يمكن أن تساعد في التحضير للدراسة الجامعية في التخصصات الطبية والهندسية، منها: منصة رواق - تحتوي على دورات مجانية في الرياضيات والفيزياء والكيمياء وغيرها. دورات edX و Coursera - تقدم دورات مجانية في مواضيع مختلفة باللغتين العربية والإنجليزية من جامعات عالمية. موقع خان أكاديمي - تعد أكاديمية خان للدراسة واحدة من أشهر وأفضل المنصات التعليمية المجانية على الإنترنت، حيث توفر مجموعة واسعة من الدروس التعليمية في مختلف المواضيع، بما في ذلك العلوم الطبيعية والتخصصات الصحية والهندسية. تتميز أكاديمية خان للدراسة بأنها تتيح للمستخدمين الوصول إلى المواد التعليمية بشكل مجاني، وتعتمد على أسلوب تعليمي يركز على التفاعل والتدريب العملي. كما تتيح للمستخدمين إنشاء حسابات شخصية تتيح لهم تتبع تقدمهم ومراجعة المواد التعليمية في أي وقت. بشكل عام، أوصي بأكاديمية خان للدراسة وأنصح الطلاب بتجربتها كمصدر إضافي لتعلم المواد الجامعية وتقوية المفاهيم الأساسية في التخصصات الصحية والهندسية. إنها منصة موثوقة ومجانية وتحتوي على مواد تعليمية عالية الجودة. Lecturio: توفر دورات تعليمية في الطب البشري والتخصصات الصحية والهندسية، بما في ذلك الكيمياء والفيزياء والرياضيات. Medscape Education: تقدم دورات تعليمية في الطب الذي تقدمه شركة Medscape الشهيرة، وتغطي مجموعة واسعة من التخصصات الصحية. Osmosis: توفر مواد تعليمية في الطب البشري والتخصصات الصحية، بما في ذلك الأناتوميا والفيزيولوجيا والأدوية.
  8. من الناحية البرمجة فهو مشروع ممتاز ولكن من ناحية التصميم فهناك بعض التعديلات التي ستجعل من التصميم أفضل ولكن لا تقلق مع كثرة التطبيق ستقابل الكثير من التصميمات التي ستتعلم منها (وهذا ليس من عمل المطور حيث أنه من المفترض أن يأتي لك التصميم جاهز) ومن هذه التحسنات أولاً : في صفحة login.html يفضل تعديل ال width لل form ل50%كما يلي form{ width: 50%; margin: auto; } ليصبح بالشكل التالي ثانياً: الصنف col-6 جعله col-5 لإضافة بعض المساحة بينهما و يفضل إضافة خلفية بيضاء وبعض التعديلاتمع إضافة الصنف justify-content-between كمايلي col-5{ background-color: white; padding: 20px; border-radius: 5px; } ليصبح كالتالي مع أخذ النصائح في التعليقات السابقة في الحسبان للإنتقال لدورة javascript يفضل بناء عدة مشاريع جيدة على ال html و ال css
  9. تعتبر البرمجة الكائنية من المفاهيم المهمة في عالم البرمجة، ولتفهمها بشكل جيد، يجب عليك فهم العناصر التالية: المفهوم الأساسي للكائنات: يتعلق هذا بفهم الكائنات ومواصفاتها وكيفية إنشائها واستخدامها في البرمجة. التراث والتعددية: يتعلق هذا بفهم علاقة الكائنات ببعضها البعض، وكيفية استخدام التراث والتعددية في البرمجة الكائنية. الاختصاص والتعيين: يتعلق هذا بفهم كيفية إجراء تعيينات للكائنات والمتغيرات في البرمجة الكائنية. الاستدعاء والاستجابة: يتعلق هذا بفهم كيفية استدعاء الكائنات واستجابتها للأوامر والإجراءات المختلفة. إدارة الذاكرة: يتعلق هذا بفهم كيفية إدارة الذاكرة والتعامل مع الكائنات ومتغيراتها وكيفية تحرير الذاكرة بشكل صحيح. الواجهات البرمجية: يتعلق هذا بفهم كيفية تصميم واستخدام الواجهات البرمجية في البرمجة الكائنية. بالإضافة إلى فهم هذه العناصر، يجب عليك أيضًا تطبيقها بشكل فعال في البرمجة الكائنية، والعمل على مشاريع عملية لتطبيق هذه المفاهيم وتعزيز مهاراتك في البرمجة الكائنية. وللتطبيق جرب بناء بعض المشاريع التي من الضروري استخدام البرمجة الكائنية فيها، مثل: نظام تذاكر طيران (Airline Reservation System) تشمل بعض الفئات الرئيسية: فئة للرحلات (Flights) تخزن بيانات عن الرحلة مثل وقت الإقلاع والهبوط ورقم الرحلة. فئة للعملاء (Customers) تخزن بيانات العملاء مثل الاسم وتاريخ الميلاد ورقم حساب البطاقة الائتمانية. فئة للتذاكر (Tickets) تربط بين الرحلات والعملاء. نظام طلبات (Order Management System) ستحتاج فئات مثل: فئة للعملاء (Customers) لتخزين بياناتهم وطلباتهم السابقة. فئة للمنتجات (Products) لتخزين بياناتها والموردين والأسعار. فئة للطلبات (Orders) لتخزين تفاصيل الطلبات من العملاء. فئة للفواتير (Invoices) لإصدار الفواتير وتتبع الدفعات. وهكذا، ففي تطبيقات إدارة العلاقات بين الكيانات - مثل العملاء والطلبات والمنتجات - يصبح استخدام البرمجة الكائنية ضروريًا للغاية لتصميم وتنظيم الكود.
  10. لا يمكن تحديد الفترة الزمنية الدقيقة التي يمكن فيها الانتهاء من دورة لغة Python، حيث يعتمد ذلك على العديد من العوامل مثل مستوى الخبرة الحالي، والوقت المتاح للتعلم والممارسة، والمدة الزمنية للدورة نفسها، والتزام الفرد وتفرغه للتعلم. بشكل عام، ينصح بتخصيص الوقت اللازم للتعلم والتدريب بشكل منتظم والاستمرار في ممارسة البرمجة باستخدام Python في المشاريع العملية. ويمكن للفرد البدء بمشاهدة 2-3 فيديوهات في اليوم، والعمل على تطبيق المفاهيم المتعلمة في المشاريع العملية بشكل مستمر، وبهذه الطريقة يمكن تحقيق التقدم في فترة زمنية قصيرة وفي نفس الوقت تطوير مهاراته في لغة Python. الأفضل هو الاهتمام بما تقوم بتطبيقه وتعلمه بدلاً من الاهتمام بالتقدم في الدورة. الهدف الرئيسي من الدورات التعليمية هو تعليم المفاهيم الأساسية والمهارات اللازمة لإتقان المهارات المطلوبة في المجال، ولكن الاستفادة الحقيقية من هذه الدورات تأتي من تطبيق هذه المفاهيم والمهارات على مشاريع عملية. عندما تستخدم المفاهيم والمهارات التي تعلمتها في مشاريع عملية، فإنها تصبح أكثر واقعية وقابلة للاستخدام في بيئة العمل الحقيقية، وتساعدك على تطوير مهاراتك وفهم المفاهيم بشكل أفضل. لذلك، يجب أن تركز على فهم المفاهيم وتطبيقها على مشاريع عملية، ويجب أن يكون التقدم في الدورة هو وسيلة لتحقيق هذا الهدف، وليس الغاية الأساسية. لذلك يمكن أن تأخذ الكثير من الوقت أكثر من أي شخص آخر وذلك بسبب التطبيق على ما تعلمته مع نفسك مثلاً بجانب التطبيقات الموجودة في الدورة أو محاولة التعمق أكثر في ما تتعلمه والعديد من الأسباب الأخرى ونصيحة لك ربما لا تعطيها الأهتمام كثيراً ولكن حاول المشاركة في المجتمعات التعليمية: يمكنك الانضمام إلى المجتمعات التعليمية والمنتديات ومواقع التواصل الاجتماعي للتواصل مع الآخرين الذين يشاركونك نفس الاهتمامات والمهارات، وتبادل الأفكار والخبرات والموارد. تحديث المهارات: يجب الاهتمام بتحديث المهارات الخاصة بك بشكل منتظم، ومتابعة التطورات في المجال الذي تعمل فيه، وتعلم أحدث التقنيات والأدوات المستخدمة في المجال
  11. هنا مثال عملي على فائدة القواميس في بايثون: نفترض أننا نريد تحديد أسعار المنتجات في موقع تجاري إلكتروني: prices = { "apple": 50, "orange": 20, "banana": 30 } هنا أنشأنا قاموس (dictionary) بأسماء المنتجات مفتاح (key) وأسعارها قيمة (value) لاحقاً في البرنامج، لو أردنا الحصول على سعر التفاح مثلاً: price = prices["apple"] print(price) # 50 نستدعي القاموس باسمه ثم نستخرج القيمة بإسم المفتاح "apple" هكذا يكون لدينا بيانات منظمة، ونستطيع الوصول إليها بسهولة عن طريق المفاتيح. في تطبيق واقعي، قد تحتوي القواميس على آلاف العناصر. تلخيصاً، القواميس تساعد في تنظيم البيانات والوصول إليها بفاعلية.
  12. كما أخبرك أسامة فإن مشروع التخرج لا يمكن تحديده إلا من خلال المدرب الذي تجري معه الإختبار ولكن على الأغلب لا يتم طرح اختبارات برمجية بلغة Scratch ، حيث يتم التركيز أكثر على لغات البرمجة الأخرى مثل Python و Java وغيرها. ومع ذلك، يجب الإحتفاظ بمشاريع Scratch الموجودة في بعض الدروس ، وذلك لأن المدرب يقوم بالإطلاع عليها كما أنه يمكن للمدرب طرح العديد من الأسئلة حول scratch بدلاً من عمل مشروع كامل على هذا البرنامج
  13. إذا كان هذا السؤال خاصة بالدورات يفضل طرح هذا السؤال في الدرس الخاص به وسيتم الإجابة عليه بأسرع وقت أما بالنسبة للسؤال فلا يوجد أي تفاصيل عن المشروع حتى نستطيع المساعدة أو حتى تفاصيل الخطأ قم بالإطلاع على ال console الموجود في dev tools للمساعدة في تحديد المشكلة ولكن إذا كنت تستخدم Bootstrap فالإحتمال الأكبر هو السبب وراء عدم ظهور القائمة المنسدلة بشكل صحيح، خاصة إذا كان يتم استخدام Bootstrap في إنشاء الواجهة الأمامية للتطبيق. يمكن أن تتسبب بعض الأنماط الافتراضية في Bootstrap في تغطية القائمة المنسدلة، أو تغيير مظهرها بطريقة غير متوقعة. لحل هذه المشكلة، يمكن استخدام أدوات المطور المتاحة في المتصفح لتحليل الأنماط المستخدمة في الصفحة وتحديد أي تعارضات أو أخطاء في Bootstrap. ومع ذلك، قد يكون هناك أسباب أخرى لعدم ظهور القائمة المنسدلة بشكل صحيح، لذلك يجب التحقق من العناصر الأخرى المستخدمة في الصفحة وتحليل الأسباب المحتملة للمشكلة.
  14. هناك عدة أسباب محتملة لماذا يعمل تطبيقك بشكل جيد عند تجربته محلياً ولكنه يواجه مشاكل عند رفعه على Google Play: قد تكون هناك مشكلة في بيئة الإصدار (Release build) مقارنة ببيئة التطوير (Debug build). تأكد من إعدادات الإصدار وخاصة عمليات الـ minify وobfuscate. ربما تواجه مشكلة في الوصول للموارد أو قواعد البيانات عند الإصدار. تأكد من تهيئة مسارات الوصول بشكل صحيح. قد تكون هناك مشكلة تراخيص أو أذونات ناقصة في الإصدار مقارنة بالتطوير. تأكد من تعريف كل الأذونات اللازمة في ملف المانيفست. ربما تستخدم ميزات غير متوفرة في الإصدارات المستهدفة من نظام التشغيل. تأكد من التوافقية بين الشيفرة والإصدارات المستهدفة. قم بمراجعة سجلات الخطأ crash logs لمعرفة تفاصيل المشكلة والاستثناءات. قد تساعد في تحديد السبب. للبحث عن سجلات الأخطاء في تطبيقك، يمكنك استخدام أدوات الشركات المطورة الخاصة بذلك، مثل Firebase Crashlytics: هي خدمة مجانية توفرها Google وتسمح للمطورين بتتبع الأخطاء والأعطال التي تحدث في تطبيقاتهم. توفر Crashlytics تقارير مفصلة توضح الأخطاء التي تم تسجيلها وتساعد المطورين على تحديد سبب المشكلة. Sentry: هي خدمة تسمح للمطورين بتعقب الأخطاء والأعطال في تطبيقاتهم. توفر Sentry تقارير مفصلة توضح الأخطاء التي تم تسجيلها وتساعد المطورين على تحديد سبب المشكلة. Instabug: هي خدمة تسمح للمستخدمين بإرسال تقارير عن الأخطاء والأعطال التي يواجهونها في التطبيقات. توفر Instabug تقارير مفصلة توضح الأخطاء التي تم تسجيلها وتساعد المطورين على تحديد سبب المشكلة.
  15. إذا كنت تريد استخدام مكتبات مساعدة أو يوجد العديد من العمليات الخاصة بالتواريخ يفضل استخدام مكتبة Moment.js لإجراء عمليات تحويل التواريخ والتعامل معها بسهولة في JavaScript. لطرح تاريخ من تاريخ آخر ثابت، يمكن استخدام دالة `diff()` لحساب فارق الوقت بين اليومين، ثم استخدام دالة `format()` لعرض الفارق بالصيغة المطلوبة (يوم، شهر، سنة): // تحديد التاريخ الثابت const fixedDate = moment('2019/11/2', 'YYYY/MM/DD'); // تحديد التاريخ الآخر const otherDate = moment('2022/7/25', 'YYYY/MM/DD'); // حساب فارق الوقت بين اليومين const diff = moment.duration(otherDate.diff(fixedDate)); // عرض الفارق بالصيغة المطلوبة (يوم، شهر، سنة) console.log(`${diff.years()} years, ${diff.months()} months, ${diff.days()} days`); لعرض التاريخ باليوم والشهر والعام، يمكن استخدام دالة `format()` وإدخال الصيغة المطلوبة، مثل: // تحديد التاريخ const date = moment('2022/7/25', 'YYYY/MM/DD'); // عرض التاريخ باليوم والشهر والعام console.log(date.format('DD/MM/YYYY')); ستظهر النتيجة بالصيغة "يوم/شهر/عام"، مثل "25/07/2022".
  16. `x-www-form-urlencoded` و `raw` هما نوعان مختلفان من أنواع نموذج البيانات `x-www-form-urlencoded` هو نوع البيانات الافتراضي في Postman ويتم استخدامه لإرسال بيانات النموذج باستخدام ترميز URL المشفر. يتم ترميز القيمة النصية لكل بيانات النموذج باستخدام ترميز URL المشفر ويتم فصل القيم باستخدام الرمز '&'، ويتم إرسالها في جسم الطلب HTTP. `raw` هو نوع بيانات يتيح للمستخدمين إدخال النص الخام (raw text) الذي يتوافق مع نوع MIME المحدد. يمكن استخدام نوع MIME المختلفة مثل `application/json` أو `text/html` أو `text/xml` لإرسال بيانات مختلفة. يمكن استخدام `x-www-form-urlencoded` و `raw` في نفس التطبيق في بعض الحالات، مثل عندما تحتاج إلى إرسال بيانات النموذج البسيطة باستخدام `x-www-form-urlencoded` وبيانات JSON أو XML معقدة باستخدام `raw` في نفس الوقت. ومع ذلك، في معظم الحالات، يتم استخدام أحد هذين النوعين فقط، وذلك يعتمد على نوع بيانات النموذج ومعالجتها في تطبيق Node.js. على سبيل المثال، يتم استخدام `x-www-form-urlencoded` لإرسال بيانات النموذج البسيطة مثل الأسماء والقيم النصية، في حين يناسب `raw` استخدامه لإرسال البيانات المعقدة مثل JSON أو XML. بشكل عام، ينصح باستخدام `x-www-form-urlencoded` في الحالات التي تتطلب إرسال بيانات النموذج البسيطة مثل النصوص والأسماء والقيم الرقمية، بينما ينصح باستخدام `raw` عندما تحتاج إلى إرسال بيانات معقدة مثل JSON أو XML أو بيانات الصور والفيديو.
  17. تعتمد الطريقة المناسبة لمعالجة الأخطاء على نوع التطبيق ومتطلباته المحددة. ومن الأهمية بمكان أن يتم التعامل مع الأخطاء بشكل سليم وفعال في تطبيق Express، لتوفير تجربة مستخدم جيدة ولحماية المعلومات الحساسة. يتم استخدام Express error handler بشكل شائع في تطبيقات Express ويوفر وظائف مفيدة مثل توليد رسائل الخطأ المناسبة وتسجيل الأخطاء وإرسالها إلى فريق التطوير. ومع ذلك، قد يتطلب استخدام بدائل مثل middleware خاص بمعالجة الأخطاء أو حزم معالجة الأخطاء مزيدًا من التخصيص أو المرونة لتلبية متطلبات التطبيق المحددة. يمكن استخدام throw new Error لرمي خطأ في أي نقطة في تطبيق Express. ومع ذلك ، يجب تجنب استخدام throw new Error في بعض الحالات الأخرى مثل: عند التحقق من البيانات المدخلة: إذا كنت تريد التحقق من البيانات المدخلة ، فمن المستحسن استخدام حزمة تحقق من الصحة (validation package) مثل Joi بدلاً من إثارة خطأ. عند معالجة الأخطاء الداخلية: إذا كان الخطأ يحدث عند معالجة الأخطاء الداخلية ، فيجب تجنب استخدام throw new Error واستخدام حزمة معالجة الأخطاء (error handling package) مثل Sentry أو Rollbar لتحديد مصدر الخطأ وإرساله إلى فريق التطوير. عند استخدام Promise: إذا كنت تستخدم Promise في تطبيق Express الخاص بك ، فيجب تجنب استخدام throw new Error واستخدام return Promise.reject () بدلاً من ذلك. بشكل عام ، يجب تجنب استخدام throw new Error في حالات الأخطاء التي يمكن التحقق منها ومعالجتها بشكل أفضل باستخدام حلول أخرى. ومن الأفضل استخدام Express error handler عندما يحدث خطأ في تطبيق Express لتوفير تجربة مستخدم أفضل وتسهيل التصحيح.
  18. استخدام github pages هو بنفس الطريقة المعتادة حتى إذا كنت تستخدم webpack ولكن الفرق فقط سيكون في تنفيذ الأمر npm run build لتجميع الملفات في مجلد dist كما في ال webpack ويتم تنفيذ جميع الخطوات كما في المصادر التالية
  19. إليكي الخطوات اللازمة لتطوير تطبيق أندرويد المحمول باستخدام Angular و Django: بناء واجهة برمجة التطبيقات (API) باستخدام Django: تصميم نماذج Django الخاصة بك وتطوير نقاط نهاية الواجهة البرمجية لتنفيذ العمليات المتعلقة بإنشاء وقراءة وتحديث وحذف (CRUD) البيانات. ستتولى الواجهة البرمجية المهام المتعلقة بتخزين البيانات و استردادها. تطوير تطبيق Angular: إنشاء تطبيق Angular الذي سيتفاعل مع واجهة برمجة التطبيقات (API) الخاصة بـ Django. يحتوي تطبيق Angular على: مكونات لكل شاشة/صفحة خدمات لإجراء طلبات HTTP إلى نقاط نهاية الـ API نماذج لتمثيل استجابات الـ API توجيه للتنقل بين المكونات إنشاء تطبيق Angular للهواتف المحمولة: يمكنك تجميع تطبيق Angular الخاص بك في تطبيق محمول طبيعي باستخدام أدوات مثل: Cordova Ionic Capacitor
  20. بالفعل هناك بعض الحسابات الموثقة (واصحابها فوق ال 18 عام أيضاً) تكون بدون عدة مميزات منها تقديم العروض على المشاريع
  21. حاول التركيز على الدراسة الآن لتحصل على معدل جيد يؤهلك لدراسة علوم الحاسب في الخارج، ولاحقاً تبدأ في تعلم البرمجة بنفسك عن طريق الموارد المتاحة على الإنترنت. فالتعليم الجامعي الجيد سيوفر لك الأساسيات الصحيحة، ولكن تعلم البرمجة بنفسك سينمي مهاراتك العملية ويساعدك على الالتحاق بسوق العمل بشكل أسرع. إذا اضطررت للبقاء في العراق، يمكنك متابعة تعلم البرمجة بجدية أكبر بالإضافة إلى الدراسة النظرية في الجامعة. ولكن أنصحك ببذل قصارى جهدك للحصول على فرصة الدراسة في الخارج، فالجمع بين التعليم المتميز وتطوير المهارات العملية سيوفر لك أفضل فرص النجاح. دراسة علوم الحاسب (أو أي تخصص آخر) في الخارج هو الخيار الأفضل لعدة أسباب: جودة التعليم: الجامعات المرموقة في الخارج توفر مستوى تعليمي عالٍ وتدريس أكاديمي متميز. ستتلقى تعليمًا ذا قيمة عالية. تنوع الخبرات: ستتعرض لثقافات وخبرات مختلفة من خلال الدراسة في بيئة جديدة. هذا يوسع آفاقك وينمي مهاراتك الشخصية. فرص التوظيف: شهادة من جامعة مرموقة في الخارج تزيد فرص توظيفك سواءً في الخارج أو عند العودة لبلدك. تطوير اللغة: ستتحسن لغتك الإنجليزية بشكل كبير من خلال الدراسة والحياة في بيئة ناطقة بالإنجليزية. الاستقلالية: ستكتسب مهارات حياتية واستقلالية شخصية من خلال السفر لوحدك والعيش بعيدًا عن الأهل. لذا أنصحك ببذل قصارى جهدك لنيل فرصة الدراسة في الخارج، فالفوائد العلمية والعملية كبيرة جدًا. وفي نفس الوقت تابع تعلم البرمجة بنفسك لتنمية مهاراتك التقنية.
  22. منذ إصدار Godot 4.0، فإن المعيار الخاص بلغة C++ المستخدم في جميع أنحاء قاعدة الشفرة هو مجموعة فرعية من C++17. بينما يوفر C++ الحديث العديد من الفرص لكتابة شفرة أسرع وأكثر قراءة، فقد اخترنا تقييد استخدام C++ لمجموعة فرعية لأسباب عدة: يجعل من الأسهل مراجعة الشفرة في محررات النصوص عبر الإنترنت. هذا يعود إلى أن مساهمين المحرك ليس لديهم دائمًا الوصول إلى بيئة تطوير متكاملة (IDE) عند مراجعة الشفرة. يجعل الشفرة أسهل في الفهم للمساهمين المبتدئين (الذين قد لا يكونون مبرمجين C++ محترفين). ويعتبر قاعدة شفرة Godot معروفة بأنها سهلة التعلم، ونود الحفاظ على هذه الخاصية. في حالة أنك مبتدأ أي لغة يجب أن تستخدم؟ أما غير ذلك فيعتبر ال c++ من أقوى اللغات إن لم تكن الأقوى في بناء الالعاب وغيرها
  23. هناك طرق أخرى لحل هذا التمرين بدون استخدام nested loops. واحدة من هذه الطرق هي استخدام الدالة repeat() والتي تقوم بتكرار نص معين عدد محدد من المرات. في الكود التالي، يتم استخدام الدالة repeat() لطباعة النمط المطلوب: for (let i = 1; i <= 5; i++) { console.log('*'.repeat(i)); } في هذا الكود، يتم استخدام loop خارجي لتحديد عدد الأسطر التي يتم طباعتها، ويتم استخدام الدالة repeat() لإعادة النجمات المطلوبة في كل سطر. ويتم تحديد عدد المرات التي يتم تكرار النجوم باستخدام قيمة i في دورة الخارجية. النتيجة ستكون نفس النتيجة التي تم الحصول عليها باستخدام nested loops في الإجابة السابقة: * ** *** **** ***** بشكل عام، يمكن استخدام الدالة repeat() لطباعة أي نمط آخر يتألف من مجموعة من الرموز أو الأحرف.
  24. من شروط الإستخدام لموقع مستقل هو في حالة أنه أقل من 18 سنه سيتم تعليق الحساب ولكن ربما يحدث معك توثيق للحساب وأنت تحت ال 18 عام ولكن وقد يطلب مستقل وثائق تثبت أنك أكبر من 18 في حال دعت الحاجة. لذلك سيكون من المخاطرة هو إنشاء حساب وأنت لا تتطابق الشروط الخاصة بالمنصة وكما أخبرك مصطفى في التعليق السابق أنه يتم الإستفادة أكثر من خلال التحدث مع مركز المساعدة من خلال هذا الرابط
  25. في بداية التعلم، قد يكون من الأفضل التركيز أكثر على فهم كيفية استخدام الدوال والمكتبات بدلاً من الغوص عميقًا في شفراتها. يمكنكي العثور على مستندات توضح استخدام الدوال والمكتبات بطريقة سهلة الفهم، والتي توفر توضيحًا لجميع المعاملات والخيارات المتاحة. لذلك، إذا كنتي مبتدئًه في تعلم Python، فمن المستحسن أن تركزي على فهم المفاهيم الأساسية للغة وتطبيقها عمليًا في الأكواد الخاصة بك. وعندما تكتسبي بعض الخبرة والثقة، يمكنكي بعد ذلك النظر إلى الشفرة المصدرية لدوال المكتبات لفهمها بشكل أفضل. يمكني العثور على الشفرات الداخلية لدوال مكتبات بايثون باستخدام مواقع مثل GitHub أو مواقع الويب الأخرى التي توفر مصادر مفتوحة للدوال المدمجة ومكتبات Python الأخرى. على سبيل المثال، يمكن الوصول إلى شفرة مكتبة Python الشهيرة "Pandas" عبر GitHub. يمكن العثور على الشفرة المصدرية لدوال مكتبة Pandas على هذا الرابط عند الوصول إلى صفحة GitHub لمكتبة Python، يمكني الاطلاع على ملفات الشفرة المصدرية الخاصة بالدوال المختلفة الموجودة في المكتبة. يمكنكي البحث عن الدالة التي ترغبي في الاطلاع على شفرتها المصدرية باستخدام محرك البحث الموجود على GitHub، ومن ثم فتح ملف الشفرة المصدرية الخاص بها. يجب الانتباه إلى أن هذه الشفرات المصدرية قد تكون معقدة وصعبة الفهم في بعض الأحيان. لذلك، يجب أن تكون لديكي بعض المعرفة في لغة Python وأساليب البرمجة، حتى تتمكني من فهم هذه الشفرات المصدرية بشكل صحيح وفعال.
×
×
  • أضف...