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

كل الأنشطة

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

  1. الساعة الماضية
  2. السلام عليكم. لقد انهيت مشاهدة + تطبيق + دراسة المفاهيم الجديدة لمسار "تطوير متجر إلكتروني بإستخدام Django", و كذلك قمت بدراسة مسار "أساسيات JavaScript" من دورة "تطوير التطبيقات بإستخدام JavaScript". اريد الآن تطوير تطبيق جديد بنفسي و قد اخترت فكرة "موقع لحجز تذاكر". 1- هل من الممكن ان تفترحو علي مطاليب معينة لعمل التطبيق ؟ ام الأفضل ان ابحث عن هذا الشيء بنفسي ؟ 2- بحكم انها المرة الأولى لي لتطوير تطبيق كبير نسبيا عما كنت افعله من ذي قبل, ما هي اهم النصائح لتطوير التطبيق ؟ 3- كيف اتعامل مع جزئية تنسيق الموقع بإعتبار اني لم ادرس CSS من قبل ؟ 4- كم الوقت الواقعي الذي يجب تحديده لإنهاء تطوير التطبيق ؟ شكرا لكم.
  3. اليوم
  4. ستجدين أسفل فيديو الدرس صندوق للتعليقات كما هنا يرجى طرح سؤالك أسفل الدرس وليس هنا حيث هنا قسم الأسئلة العامة ولا نقوم بإجابة الأسئلة الخاصة بمحتوى الدورة أو الدرس، وذلك لمعرفة الدرس الذي توجد به مشكلتك و لمساعدتكِ بشكل أفضل.
  5. ما سبب الخطأ؟
  6. في الحقيقة عملية الجمع + لها سلوك مزدوج فهي تستخدم لجمع الأرقام ولربط النصوص أيضا وهو ما يعرف بال concatenation وعندما يكون أحد المعاملات نصا (string) يحول JavaScript جميع القيم إلى نصوص ويربطها بدلا من جمعها رياضيا لذلك فإنّ: "32" + 10 + 7 سينتج: "32107" أما في مقارنة المساواة == التي ذكرتها: true == "1" فالوضع مختلف تماما لأن عملية == لا تدعم ربط النصوص فيحاول JavaScript هنا إيجاد أرضية مشتركة بتحويل كلا الطرفين إلى أرقام ف true يصبح 1 و"1" يصبح 1 فتكون المقارنة صحيحة والقاعدة الأساسية أنه عند استخدام + مع نص يحدث تحويل إلى نصوص (String Coercion) بينما في العمليات الأخرى ك (==, -, *, /) يحدث تحويل إلى أرقام (Numeric Coercion). ولتجنب هذا يمكنك استخدام Number(value1) أو parseInt(value1) أو العملية الأحادية +value1 لتحويل النص إلى رقم قبل الجمع، أو استخدم === بدلا من == لتجنب Type Coercion في المقارنات.
  7. من الأفضل أن تكون الأكواد مقسمة على حسب المشاريع أو على الأقل على حسب المسارات وأن لا تكون في مجلد واحد ضمن المستودع فذلك يجعلها غير منظمة، مع ذلك يمكنك تنظيمها في أي وقت بجعل كلّ مسار بأكواده الخاصة به، وأما المشاريع التي يجب رفعها فهي التطبيقات العملية ومن الأفضل أن ترفع فهي إجبارية للحصول على الشهادة.
  8. يفضل إنشاء مجلد أساسي للدورة ثم بداخله قومي بإنشاء عدة مجلدات حيث مجلد خاص لكل مسار في الدورة. وبداخل كل مجلد الخاص بالمسارات نقم بوضع التطبيقات العملية التي قمنا بها في ذلك المسار وفي النهاية تقومي برفع المجلد الرئيسي بالكامل بما يحتويه من مجلدات الخاصة بجميع المسارات على مستودع GitHub وتوفير الرابط الخاص به عند التقدم للإختبار. ويوجد في بعض المسارات مشاريع كاملة ومجلدات كثيرة خاصة بتلك المشاريع يمكنكِ إنشاء مجلد منفصل لهذا المشروع وهو الأفضل للتنظيم .
  9. السلام عليكم ورحمة الله، في ملف jj.js في السطر howData() لديك خطأ إملائي في اسم الدالة فقد كتبت howData() بدلا من showData() مما يسبب خطأ لأن الدالة غير موجودة أصلا لذا قم باستبدالها ب: showData() وأيضا في السطر: btnDelete.innerHTML = <button...> هنا الكود يحاول وضع HTML مباشرة بدون علامات اقتباس خلفية أو ما يعرف ب (template literals) مما سيسبب syntax error لذا استبدل: btnDelete.innerHTML = <button onclick="deletAll()"> delete All</button> btnDelete.innerHTML = `<button onclick="deletAll()">delete All</button>` وأيضا هنا في دالة deleteData(i) الدالة هنا فارغة ولا تفعل شيء سوى طباعة الرقم في console بينما المفترض أن تحذف العنصر من المصفوفة و localStorage وتحدث الجدول أي بدلا من: function deleteData(i) { console.log(i) } يمكنك تعديلها كالتالي: function deleteData(i) { dataPro.splice(i, 1); localStorage.setItem('product', JSON.stringify(dataPro)); showData(); } وأما في ملف index.html في السطر: <tbody di="tbody"> لديك خطأ إملائي في الخاصية فقد كتبت di بدلا من id مما يجعل JavaScript لا يستطيع العثور على العنصر عند استخدام: document.getElementById('tbody') أي بدلا من: <tbody di="tbody"> عدله ليصبح: <tbody id="tbody">
  10. انا كاتبه كل الاكواد الدروس مع بعض لما بطبق هل ده صح لعرضه لاخد الشهاده
  11. يوجد لديكِ بعض الأخطاء في ملف index.html و jj.js . أولا في ملف index.html في سطر 60 لقد كتبتِ كلمة di ولكن الصحيح هو id هكذا : <tbody id="tbody"> أما في ملف jj.js يوجد خطأين . في سطر 100 هنا : يجب وضع هذا السطر بين علامتي إقتباس لأنه لا يمكن كتابة كود html في ملف js هكذا : `<button onclick="deletAll()"> delete All</button>` وفي سطر 105 كتبتي howData ولكن الدالة الصحيحة هي showData : showData() الآن سيعمل كل شئ بشكل صحيح. index.html jj.js
  12. let title = document.getElementById('title'); let price = document.getElementById('price'); let taxes = document.getElementById('taxes'); let ads = document.getElementById('ads'); let discount = document.getElementById('discount'); let total = document.getElementById('total'); let count = document.getElementById('count'); let category = document.getElementById('category'); let submit = document.getElementById('submit'); function getTotal() { if (price.value != '') { let result = (+price.value + +taxes.value + +ads.value) - +discount.value; total.innerHTML = result; total.style.background = '#040'; } else { total.innerHTML = ''; total.style.background = '#a00'; } } function updataData() { } let dataPro; if (localStorage.product != null) { dataPro = JSON.parse(localStorage.product) } else { dataPro = []; } submit.onclick = function () { let newPro = { title: title.value, price: price.value, taxes: taxes.value, ads: ads.value, discount: discount.value, total: total.innerHTML, count: count.value, category: category.value, } dataPro.push(newPro); localStorage.setItem('product', JSON.stringify(dataPro)) clearData() showData() } function clearData() { title.value = ''; price.value = ''; taxes.value = ''; ads.value = ''; discount.value = ''; total.innerHTML = ''; count.value = ''; category.value = ''; } function showData() { let table = ''; for (let i = 0; i < dataPro.length; i++) { table += ` <tr> <td>${i}</td> <td>${dataPro[i].title}</td> <td>${dataPro[i].price}</td> <td>${dataPro[i].taxes}</td> <td>${dataPro[i].ads}</td> <td>${dataPro[i].discount}</td> <td>${dataPro[i].category}</td> <td>${dataPro[i].total}</td> <td><button id="updat">update</button></td> <td><button onclick="deleteData(${i})" id="delete" onclick="deleteData(i)">delete</button></td> </tr> ` console.log(table) } document.getElementById('tbody').innerHTML = table; let btnDelete = document.getElementById('deleteAll'); if (dataPro.length > 0) { btnDelete.innerHTML = <button onclick="deletAll()"> delete All</button> } else { btnDelete.innerHTML = ''; } } howData() function deleteData(i) { console.log(i) } function deletAll() { localStorage.clear() dataPro.splice(0) showData() } jj.jsstyle.css index.html
  13. الفرق الذي لاحظته في الأمثلة يعود إلى آلية التحويل الضمني (Type coercion) في جافاسكريبت، ولكن هناك عند وجود عملية جمع (+)، إذا كان أحد الطرفين سلسلة نصية (string)، فإن جافاسكريبت تحول الطرف الآخر تلقائيًا إلى string أيضًا وتقوم بعملية الربط النصي (concatenation) بدل الجمع العددي. في المثال الأول: var value1 = "32"; // string var value2 = 10; // number var value3 = 7; // number var sum = value1 + value2 + value3; console.log(sum); // "32107" بسبب أن value1 نصية، عند كتابة value1 + value2، يحوّل value2 إلى نص ويجمعهم نصيًا "3210". ثم يضاف value3 "32107". في المثال الثاني: كل القيم أرقام، لذلك يتم الجمع الطبيعي 32 + 10 + 7 = 49. لتجنب هذا السلوك، يمكنك استخدام Number() لتحويل أي قيمة نصية إلى رقم قبل الجمع: var sum = Number(value1) + value2 + value3; console.log(sum); // 49 بالتوفيق
  14. هذا الأمر بالفعل يسبب إلتباس وخطأ وهو يكمن في الفرق بين التحويل الضمني (Type Coercion) عند استخدام عامل الجمع و المقارنة بعامل المقارنة ==. ففي JavaScript يمتلك عامل الجمع + وظيفتين مختلفتين تماما ويتم تحديد الوظيفة بناء على نوع البيانات : الجمع الحسابي (Addition): إذا كان الطرفين أرقاما. الدمج النصي (Concatenation): إذا كان أحد الطرفين أو كلاهما نصا (String). ففي JavaScript للنصوص الأولوية القصوى عند استخدام عامل + فبمجرد أن يرى المحرك نصا واحدا في العملية فإنه يقوم بتحويل كل ما يليه إلى نصوص ودمجها. ففي مثالك الأول: value1 هو نص "32". وعند تنفيذ value1 + value2 تصبح العملية "32" + 10. بسبب وجود النص يتم تحويل 10 إلى "10" والنتيجة "3210". ثم "3210" + 7 تصبح "32107". ولاحظ أن العملية ستختلف بناء على ترتيب الأرقام والنصوص فمثلا : var value1 = 32; var value2 = 10; var value3 = "7"; var sum = value1 + value2 + value3; console.log(sum); ستجد النتيجة 427 وذلك لأنه أولا تم جمع 32 و 10 لأنهم أرقام والناتج هو 42 ومن ثم يتم جمع 42 مع النص 7 ليصبح الناتج 427 . أما بخصوص سؤالك لماذا في true == "1" يتم التحويل لرقم بينما في المثال الأول لم يحدث ذلك فإن الإجابة تكمن في أن قواعد التحويل تختلف باختلاف العامل (Operator): فعند استخدام == لمقارنة أنواع مختلفة تتبع JavaScript خوارزمية محددة تسمى (Abstract Equality Comparison Algorithm) : فإذا تم مقارنة Boolean مع أي نوع آخر يتم تحويله أولا إلى Number (أى true تصبح 1). وإذا تم مقارنة Number مع String يتم تحويل النص إلى رقم. ولذلك فإن true == "1" تتحول إلى 1 == 1 والنتيجة true. وفي حالة الجمع المحرك لا يحاول تحويل النص إلى رقم لأن الدمج النصي هو السلوك الافتراضي لعامل الجمع + وهو يفترض أنك تريد بناء نص طويل وليس بالضرورة إجراء عملية حسابية. وستلاحظ الفرق عند إستخدام عامل الطرح "-" فعامل الطرح لا يعمل إلا مع الأرقام ولذلك فإنه يجبر التحويل إلى رقم وليس سلسة نصية.
  15. السادة الافاضل مرفق الكود التالى var value1 = "32"; var value2 = 10; var value3 = 7; var sum = value1 + value2 + value3; console.log(sum); بيرجع 32107 و الكود التالى بيرجع var value1 = 32; var value2 = 10; var value3 = 7; var sum = value1 + value2 + value3; console.log(sum); بيرجع 49 الكود الاول تعامل مع جميع الارقام على انها من النوع STRING بينما الكوت الثانى تعامل مع جميع الارقام ك NUMBER مع العلم عند الرجوع الى Type coercion وكتابه true == "1" بيكون الناتج true ويتم تحويل نوع البايانت من string to number بشكل ضمنى لماذا لايتم مثل هذا فى المثال الاول بناءا على Type coercion
  16. أنصحك بالذهاب إلى الصفحة التالية الخاصة بتفاصيل الدورة : https://academy.hsoub.com/learn/python-application-development/ ستجد أن الدورة تتكون من 69 ساعة فيديو تدريبية وستجدها مقسمة إلى مسارات وكل مسار مقسم إلى أقسام أخرى بها الفيديوهات وستجد كل مسار موضح به عدد الدروس والساعات . فدورة بايثون تحتوي على أكثر من دورة بداخلها ومقسمة إلى مسارات كما أخبرتك وستحتاج إلى 4 أشهر على الأقل لإنهائها بالكامل والفترة المناسبة هي 6 أشهر . فمثلا ستجد أن المسار الأول يحوي 11 ساعة من الدروس و المسار الثاني يحوي 15 ساعة والمسار الثالث يحوي 7 ساعات والمسار الرابع يحوي 5 ساعات . إذا فالأربع مسارات مجموعهم 38 ساعة من الدروس . ويجب عليك معرفة أنه لإنهاء ساعة واحدة من الدورة فهي تختلف من شخص إلى أخر في نطاق 3 إلى 5 ساعات . وذلك لأن الطلاب يقومون بإيقاف الدرس مثلا لكتابة كود والتطبيق أو لإستيعاب جزء ما أو البحث عن معلومة معينة أو إعادة جزء معين . إذا بهذا المعدل يمكننا حساب متوسط 38 * 4 ساعات أى أن الأربع مسارات ستأخذ منك من 114 ساعة إلى 152 ساعة مذاكرة وتطبيق وهي تختلف بناء على مدى قدرة إستيعابك وأيضا تطبيقك للدروس . وإذا قمت بدراسة 20 ساعة فيا الإسبوع أى بمعدل ثلاث ساعات في اليوم فستنهي أول أربع مسارات في 6 أسابيع إلى 8 أسابيع ويمكنك حساب باقي المسارات بنفس الطريقة. وإليك نصائح وتفاصيل أكثر من خلال التعليق التالي :
  17. السلام عليكم ورحمة الله وبركاته، الدورة في الحقيقة يمكن أن تكملها في وقت قصير لما يقارب الشهر إن درست يوميا وبشكل مستمر ودون تقطع لكن هذا لا يكفي، وهنا دوما نشجع الطلبة على أن لا يربطوا مسارهم في التعلم بوقت زمني لإنهاء الدورة، فالدورة بعد الاشتراك فيها فستبقى متاحة لك مدى الحياة، وسيكون لديك وصول مجاني لأية تحديثات قد تطرأ على الدورة في المستقبل. لذا حاول التركيز أكثر على محتوى الدرس والتطبيق أكثر فأكثر ويمكنك طرح أسئلتك في أي وقت تريد وسنساعدك على الفهم ونبسط لك أي مفاهيم تجدها صعبة.
  18. كم يوم احتاج لانتهي من هذي الدوره
  19. السلام عليكم ما رأيكم في شركة https://www.dzsecurity.com/ar/ اريد ان استضيف موقع static مبني بNext.js و تطبيق كامل مبني بReact + backend (لم احدد بعد) اريد استضافة جيدة و سعر منخفض هل هي افضل خيار ؟ بارك الله فيكم
  20. البارحة
  21. سوق العمل ستحتاج إلى تفقده بنفسك من خلال تفقد الوظائف المعروضة على مواقع التوظيف مثل LinkedIn وIndeed، أي البحث بالكلمات المفتاحية الخاصة بمجال بايثون مثل Python Django Backend Developer بالنسبة لما يمكنك العمل به بعد الإنتهاء من الدورة،: مطور Full-stack لبناء مواقع الويب والمتاجر الإلكترونية أي قادر على تطوير الواجهة الأمامية والخلفية أيضًا من خلال Django و Flask. مطور واجهة خلفية Back-End فقط. مجال تعلم الآلة ولكن هنا أنت بحاجة إلى تعلم المزيد وعدم الإكتفاء بالدورة والأمر بحاجة إلى وقت أكثر من أي مجال آخر. محلل بيانات (Data Analyst )، حيث ستتمكن من استخدام مهارات البرمجة الخاصة بك للتحليل واستخراج البيانات من مصادر متنوعة، ومعالجة البيانات، وإجراء التحليلات الإحصائية والتعلم الآلي باستخدام مكتبات Python مثل pandas و NumPy و scikit-learn. مطور odoo ستجد تفصيل أكثر هنا:
  22. في أغلب الأحيان ستجد السبب هو الذاكرة العشوائية، وهو أمر لا يتضح لك عند دراسة لغات مرتفعة المستوى مثل جافاسكربيت وبايثون والتي تقوم بتجريد الكثير من الأمور أي إخفائها عنك. السبب هو الـ Memory Offset أو إزاحة الذاكرة، حيث الذاكرة RAM شكلها كالتالي تقريبًا: العنوان: 1000 1001 1002 1003 1004 القيمة: 'H' 'e' 'l' 'l' 'o' وذلك عند تخزين المتغير: let str = "Hello"; فالكمبيوتر يحفظ أول حرف في عنوان أساسي base address مثلاً 1000 وللوصول لباقي الأحرف نستخدم الإزاحة: عنوان الحرف = العنوان الأساسي + الإزاحة (offset) أي ما يحدث في الخلفية عند كتابة str[0] : str[0] 1000 + 0 = 1000 str[1] 1000 + 1 = 1001 str[2] 1000 + 2 = 1002 لو بدأنا من 1 كنا نحتاج إلى تنفيذ طرح في كل مرة: str[1] 1000 + (1-1) = 1000 وتلك عملية زائدة لا حاجة إليها.
  23. آلية الإختبار هي كالتالي، بعد إنهاء 4 مسارات من الدورة على الأقل، أو الدورة بالكامل وذلك أفضل في حال كنتي مبتدئة، عليكِ رفع المشاريع التي قمتي بها بالدورة على حسابك في github، ثم التحدث لمركز المساعدة وإخبارهم أنك تريدين التقدم للإختبار وتوفير روابط المشاريع على github. ثم الإنتظار لبعض الوقت لحين مراجعة المشاريع وسيتم الرد عليك، وتحديد موعد لإجراء مقابلة، وبها يتم: إجراء محادثة صوتيّة لمدة 30 دقيقة يطرح المدرّب عليك أسئلة متعلّقة بالدورة والأمور التي نفّذتيها خلالها. يحدد لك المدرّب مشروعًا مرتبطًا بما قمت به أثناء الدورة لتنفيذه خلال فترة محددة تتراوح بين أسبوع إلى أسبوعين. إجراء محادثة صوتيّة أخرى لمدّة 30 دقيقة يناقش بها مشروعك وما نفذته وتطرح أسئلة خلالها. إن سارت على جميع الخطوات السابقة بشكل صحيح، تحصلين على الشهادة أو يرشدك المدرّب لأماكن القصور ويطلب منك تداركها ثم التواصل معنا من جديد. وبعد الحصول على الشهادة ستحصلين على المزايا التالية: إن لم تحصلين على عمل خلال 6 أشهر يغطي قيمة الدورة التي دفعتها، فسنعيد لك ما دفعتيه. موقع إلكتروني لمدة سنة مقدم من سنديان مع نطاق مخصص لعرض أعمالك وبناء تواجدك الرقمي على الإنترنت. اشتراك لمدة سنة في العضوية المميزة على منصة مستقل لمساعدتك على الانطلاق في العمل الحر وحصولك على أول عميل. استشارة توظيف فردية، وسيرة ذاتية احترافية من موقع بعيد تعزز فرصك في الحصول على الوظيفة التي تتطلعين إليها. بالنسبة لطريقة الدراسة ستجدين تفصيل هنا:
  24. الطريقة الحديثة حاليًا هي من خلال القالب النصي Template Literals، والصيغة الخاصة به هي علامة تنصيص مائلة ` ` تستطيع كتابتها بالضغط على حرف ذ أعلى اليسار في لوحة المفاتيح لكن قم بتحويلها إلى الإنجليزية أولاً. const newLineString = `Up up down down`; console.log(newLineString); وبدونها ستحتاج إلى استخدام رمز السطر الجديد n\ const newLineString = 'Up up\n down down'; console.log(newLineString); والأفضل القالب النصي، لأنه يسمح أيضًا بإضافة متغيرات لتكوين النص كالتالي: const name = 'mustafa' const newLineString = `Up up down down ${name}`; console.log(newLineString);
  25. دورة علوم الحاسب غير مخصصة لتعليمك مجال محدد في البرمجة من أجل سوق العمل، بل غرضها هو تأهيلك لتعلم البرمجة بشكل سليم ودخول سوق العمل بقوة، حيث أنك ستمتلك أفضلية بالطبع بسبب تعلمك لأساسيات البرمجة من خلال بايثون وجافاسكريبت وأيضًا علوم الحاسب والتي تتضمن التالي: أساسيات الحاسوب وعلومه والتفكير المنطقي وما هي الخوارزميات وكيف تفيد في البرمجة تطبيقات عملية على أساسيات التفكير المنطقي باستخدام بيئة سكراتش Scratch التفاعلية أساسيات أنظمة التشغيل المختلفة وكيفية تثبيت البرمجيات اللازمة للبرمجة عليها أساسيات سطر الأوامر في نظام لينكس، وشرح الأسس التي بني عليها النظام مع تطبيقها عمليًا أنظمة قواعد البيانات المختلفة، مع شرح تفصيلي للغة SQL للتعامل معها مبادئ أساسية في أنظمة قواعد البيانات NoSQL المفاهيم الأساسية التي تبنى فيها صفحات الويب مفاهيم أساسية في الشبكات والخوادم، وكيف يتم استقبال الطلبيات إلى الخادم والرد عليها مبادئ الحماية والأمان في الويب وبالتالي يصبح لديك قاعدة معرفة قوية ووعي ودراية بمجالات البرمجة، الأمر الذي يؤهلك للخطوة القادمة وهي إختيار مجال البرمجة الذي تريده، حيث سيتم توجيهك بعد إنتهاء الدورة وإجتياز الإختبار إلى كيفية تعلم المجال الذي تريده لدخول سوق العمل أو إقتراح مجالات ومنها الويب أو تطوير تطبيقات الهاتف أو مجال الواجهة الخلفية Back-End أو الجمع بين الواجهة الأمامية والخلفية لتصبح مطور Full-stack. وأيضًا ستجد نفسك قادر على حل المشكلات التي تواجهك ولديك مهارة التفكير المنطقي أي مستواك أفضل من أي شخص قام ببدأ المسار التعليمي في مجال معين دون تعلم الأساسيات. وبخصوص التوظيف وسوق العمل، فأرجو مناقشة ذلك مع مركز المساعدة وسيتم إرشادك لما يجب فعله.
  26. السلام عليكم و رحمة الله و براكاته أسمي مصطفى عمري 22 عاما , أنا من العراق, و أعتذر مقدماً لأن كلامي سوف يكون طويل : في سنة 2025 قررت دراسة الذكاء الاصطناعي أولاين لأنني لم استطع دخول الجامعة بسبب الحالة المادية , لذالك في يوم 19/4/2025 قررت دراسة لغة بايثون عند أبراهيم عادل لان لغة بايثون هي العمود الفقري للذكاء الاصطناعي أكملت تقريبا 13 ساعة فيديو , أي أكملت المستوى الاول , وبعدها قررت الدخول في دورة أكاديمية حسوب الخاصة بالذكاء الاصطناعي لانها أكبر دورة في الوطن العربي لكن لم أستطع لأن أكثرية المصارف العراقية عليها عقوبات لذالك لم استطع . لذالك قررت دراسة الذكاء الاصطناعي من اليوتيوب في يوم 10/9/2025 لكن بعد فترة وجدت نفسي مشتت لان في اليوتيوب لا يعلمونك ان تكتب كود عملي او مشروع حقيقي , لذالك قررت الذهاب الى منصة كورسيرا و بحثت عن دورات خاصة بالذكاء الاصطناعي و وجت و حصلت عليها مجانا لكن كانت الدورات عبارة عن دورات نظرية عن التعلم الالي الذي يقدمها الاب الروحي للذكاء الاصطناعي أندرو نيك , وعندما أكملتها و حصلت على الشهادة فهمت الكثير الكثير لكن نظريا و ليس عمليا, أكملت تقريبا 23 ساعة فيديو , وهذه 23 ساعة ما عدا دورات اليوتيوب التي تفوق هذا الرقم بكثير , و في يوم من الايام وجدت طريقة للدفع عن بعد ,لذالك قمت بشراء دورة أكاديمية حسوب الخاصة بالذكاء الاصطناعي في يوم21/1/2026 لكن دورة أكاديمية حسوب دورة ضخمة لا أستطيع تكملتها كلها لانني منذ 7 أشهر كنت ادرس على اليوتيوب و درست لغة بايثون أيضا و درست دورة التعلم الالي من كورسيرا كنت ادرس يوميا تقريبا بدون تقطع من 3 ساعات الى4, لذا لا استطيع تكملة دورة من الصفر ,لذا قررت الدخول في أختصاص معين من الدورة و هي أكمال خمس مسارات من الدورة : وهي : 1- أساسيات بايثون2-تطبيقات عملية على النماذج LLMs النصية الكبيرة 3- Data Analysisتحليل البيانات 4-التعامل مع البيانات 5- إنشاء وكلاء ذكاء اصطناعي باستخدام MCP أي بمعنى أختص فقط في بناء وكلاء ذكاء اصطناعي MCP . هل هذا التخصص كافي لكي أستطيع الحصول على عمل , لانني متأكد من أنني لا استطيع تكملة الدورة في الوقت الحالي فقط اكمال هذه المسارات الخمسة التي ذكرتها , أرجو منكم أعطائي نصيحة من القلب و شكراً و أعتذر مجدداً على أطالة الكلام .
  27. السلام عليكم ورحمة الله، يمكنك استخدام Template Literals وهي وضع النص بين العلامتين التاليتين ` ` حيث تسمح هذه الطريقة بضغط زر Enter داخل الكود لينتقل النص فعليا لسطر جديد أو يمكنك استخدام علامات الاقتباس العادية مع إضافة الرمز \n في المكان الذي ترغب ببدء السطر الثاني منه، وهو رمز برمجي يعبر عن سطر جديد فمثلا بكتابة: `"Up up\ndown down"` عند الطباعة سيقوم بفصل الكلمتين ووضعهما تحت بعضهما البعض تماما كما تريد.
  28. كيف يمكننى عمل string باستخدام js واريد طباعة جزء من string فى السطر الاول والجزء الاخر فى السطر الثانى "Up up down down" return 'up up down down'
  1. عرض المزيد
×
×
  • أضف...