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

عبد الوهاب بومعراف

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

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

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

كل منشورات العضو عبد الوهاب بومعراف

  1. بالنسبة لقيمة المتغيرات تما طباعتها بدون مشاكل، تأكد من أن المسار المذكور في علامة <script> صحيح، أو ربما لديك إضافة خاصة ب google translate و هي المتسببة في هذا المشكل، بما أن الشيفرة الخاصة بك لا تحتوي على طلبات HTTP واضحة، فعلى الأغلب السبب منها.
  2. يوجد العديد من المواقع المجانية الأمر يعود على حسب إختيارك و أفضلها GitHub Pages حيث يسمح لك باستضافة مواقع ثابتة مجانا باستخدام GitHub، ويعتبر مناسب للمواقع البسيطة ومشاريع الويب الشخصية، كما يوجد أيضا Netlify حيث يوفر استضافة مجانية وسهلة الاستخدام للمواقع الثابتة، ويتميز بواجهة سهلة وسرعة في النشر، أما إذا كان مشروع يعتمد على JavaScript وReact فيوجد إستضافة Vercel فهي ممتازة لمثل هذه المشاريع، ويوفر استضافة مجانية وسهلة الاستخدام مع تكامل مباشر مع GitHub وGitLab.
  3. الإختيارات كثيرة و الأمر يعود على حسب رغبتك و اللغة التي تريد، فيوجد بايثون حيث تعتبر لغة سهلة التعلم وتستخدم بشكل واسع في تطوير الباك إند بفضل أطر العمل مثل Django وFlask، كما يوجد جافا سكريبت و التي تعتبر الأكثر إستخداما و يمكن استخدامها في الباك إند باستخدام Node.js، مما يجعلها خيارا جيدا إذا كنت مهتما بتعلم JavaScript بشكل عام، أو يمكنك الإعتماد على PHP فهي لغة شهيرة لتطوير الويب، وتستخدم في العديد من مواقع الويب وتطبيقات الويب بفضل أطر العمل مثل Laravel. بالتوفيق.
  4. لإجتياز الإمتحان يجب عليك الإنتهاء من أربع مسارات في الدورة على الأقل، بعدها سيتم إختبارك في تلك المسارات، و يوجد أيضا مشاريع في كل دورة يجب عليك إنجازها و وضعها في المستودع الخاص بك في Github، الإمتحان يركز على هذه الدروس التي درستها، لذا حاول التركيز على المشاريع التي قمت بها و فهمها جيدا، بالنسبة للإمتحان سيطلب منك إنجاز مشروع مصغر في مدة عشرة أو 15 يوم و يجب عليك تقديمه، و يمكنك أن تطلع أكثر على المعلومات من هذا المقال: أو من خلال دليل الإمتحان.
  5. وعليكم السلام، يمكنك التحقق من أن برنامج بايثون قد تمت تثبيته أولا من خلال فتح موجه الأوامر قم بالضغط على زر Windows + Rثم اكتب "cmd" ثم اضغط Enter واكتب الأمر التالي: python --version إذا تم تثبيت بايثون بشكل صحيح، سترى رقم الإصدار المثبت على جهازك. مثل: Python 3.9.5 إذا لم تظهر هذه المعلومات وظهرت رسالة خطأ بدلا من ذلك، فقد يعني هذا أن بايثون غير مثبت بشكل صحيح أو أن مسار بايثون غير مضاف إلى متغير البيئة PATH. عندما تقوم بتثبيت البرنامج أول مرة، احرص على تنزيل أحدث إصدار من الموقع الرسمي وأثناء التثبيت، تأكد من اختيار "Install launcher for all users" و "Add Python to PATH" وحينما تظهر رسالة التثبيت بنجاح تأكد من غلق نافذة المثبت تماما ثم جرب تشغيل IDLE من خلال البحث عن "IDLE (Python 3.x)" في قائمة البدء وفتحه وهذه هي بيئة التطوير المتكاملة لبايثون وينبغي أن تعمل إذا تم التثبيت بشكل صحيح. يمكنك متابعة هذه الخطوات إن لم تعمل معك:
  6. المشكلة الأساسية تكمن في نموذج HTML فحقول الإدخال في النموذج لا تحتوي على خاصية 'name'وبدون هذه الخاصية، عندما يتم إرسال النموذج، لن يتم إرسال أي بيانات فعليا إلى الخادم وهذا هو السبب في أنك ترى قيم NULL في قاعدة البيانات لذا يجب إضافة خاصية 'name' لكل حقل إدخال في النموذج كما يجب أن تتطابق هذه الأسماء مع أسماء أعمدة قاعدة البيانات والأسماء التي تستخدمها في وحدة التحكم (Controller) عدل النموذج وعوض الجزء القديم بالتالي: <input type="text" name="name_std" class="form-control" style="width: 100%;" placeholder=" اسم الطالب"> <input type="text" name="num_std" class="form-control" style="width: 100%;" placeholder="رقم القيد"> <input type="email" name="email_std" class="form-control" style="width: 100%;" placeholder="البريد الالكتروني "> <input type="date" name="date_student" class="form-control" style="width: 100%;"> <input type="text" name="adress_std" class="form-control" style="width: 100%;" placeholder=" العنوان"> <input type="text" name="phone" class="form-control" style="width: 100%;" placeholder="رقم الهاتف">
  7. هذا الأمر يعتمد على ما تعلمته، وعلى المكتسبات البرمجية التي لديك، ففي حال ما كان لديك إلمام بمفهوم الدوال، الجمل الشرطية، المتغيرات والعوامل، الحلقات التكرارية وغيرها من المفاهيم التي ستدرّس في المسار الأول فيمكنك تخطيها، أما إن لم يكن لديك أيّ إلمام بها، أو تجربة عملية معها ولم تقم بكتابة شيفرات برمجية وتطبيق هذه المفاهيم فلا أنصح بتخطي هذا المسار. وحتى لو كانت لديك خبرة سابقة في هذه المفاهيم فيمكنك إتمام المسار الأول بسرعة دون تعب أو جهد.
  8. حاليا لا يوجد ملخصات للدروس، ولكن العديد من الموارد البديلة موجودة وأعتقد أن عدم وضع ملخصات هو دافع للطالب كي يستلهم من الدروس مباشرة أهم النقاط التي يقدمها المدرب، يمكنك كتابة الملخصات بنفسك، والعديد من الأبحاث توصي بهذا الأمر لما فيه من منفعة كبيرة لصاحبها، عوض الاعتماد على ملخصات ليست من كتابته. ما يوجد حاليا يمكن أن يغنيك عن الملخصات الجاهزة، لكن أنصحك بكتابتها بنفسك، يمكنك الاستفادة من موسوعة حسوب فهي كنز غني بالمعلومات ومورد يمكنك الرجوع إليه وقت ما احتجت لذلك: موسوعة حسوب. كما يمكنك الوصول إلى رابط لمستودع المشروع ستجد به الكود النهائي للمشروع وذلك في المسارات الخاصة بالمشاريع العملية. كما أنصح بتحقيق التوازن بين الحفظ والفهم، فليس كل ما يتم تقديمه يتم تلخيصه وحفظه، توجد أمور ستتعود عليها بالممارسة والاستمرارية وليس الحفظ.
  9. return و print() هما كلمتان مفتاحيتان في العديد من لغات البرمجة، وprint() باختصار نستخدمها لعرض قيمة معينة على الشاشة تقوم بطبع القيمة المحددة ثم تستمر في تنفيذ الكود التالي، كما أنها لا تعيد أيّ قيمة أي لا يمكن تخزين النتيجة التي تم طباعتها في متغير لاستخدامها لاحقا. بينما return فتستخدم لإرجاع قيمة من دالة إلى المكان الذي تم استدعاء الدالة منه عندما يصل التنفيذ إلى عبارة return، تتوقف الدالة عن العمل وتعيد القيمة المحددة أي أنه يمكن تخزين القيمة المرجعة في متغير لاستخدامها لاحقا في عمليات حسابية أو في دالة أخرى. يمكنك الاطلاع أكثر من هنا:
  10. الدورة التي ستبدأ بها تعتمد على رغبتك الشخصية بالدرجة الأولى ولميولاتك، فقد تكون محبّا لدورة ما ويمكنك تقديم أقصى ما لديك كي تستوعبها وتتقنها، فما دمت في البداية فالبدء بدورة تطوير واجهات المستخدم قد يكون أحسن، لأنك ستتعلم فيها العديد من المفاهيم الأساسية، بالرغم من أنه حتى دورة تطوير تطبيقات الويب ستتعلم فيها بعض المفاهيم الأساسية والتي يوجد معها ترابط مع الدورات الأخرى. أما استرداد المبلغ فيتم وفق شروط ومعايير تحددها الأكاديمية، ومن بين هاته الشروط هو إتمامك لدورة واحدة مع أخذ الشهادة وتحصلك عليها، ثم في حالة ما لم تتحصل على عمل خلال ستة أشهر يمكنك التواصل مع الدعم لاستكمال الإجراءات المناسبة من هنا: مركز دعم الأكاديمية. كما أنصحك بالاستفسار عن عروض الصيف عندهم فالمعلومات الحالية لدي هي فقط الموجودة في هذا الرابط: عرض العطلة الصيفية 2024.
  11. يمكنك تحديث ال VSCode لديك لأحدث إصدار، وتحديث بايثون لديك، أو حاول إلغاء تثبيت امتداد Python ثم إعادة تثبيته مرة أخرى من خلال الذهاب إلى علامة الامتدادات في الشريط الجانبي والبحث عن Python، ثم قم بإلغاء التثبيت وإعادة التثبيت وكحل مؤقت يمكنك كما في الصورة: فتح VS Code والانتقال إلى الإعدادات بالنقر على أيقونة الإعدادات في الزاوية السفلية اليسرى واختيار "Settings". في شريط البحث، اكتب "validate" وابحث عن إعدادات مثل "Python> Validate: Enable". قم بإلغاء تحديد المربع بجوار اللغات التي لا تريد التحقق منها. هذا في حال لم تكن تريد استخدام ال Intellisense لكن أنصح بتحديث الإصدارات لديك ليعمل عندك بشكل جيد.
  12. يمكنك حفظ الصورة، واختيار مكان حفظها قبل ذهاب واجهة ال Print Screen هذا سيسهل عليك مشقة البحث، وعمل خطوات إضافية، فبعد الضغط على Print Screen ستظهر لك هذه الصورة في أقصى يمين الشاشة في الأسفل: قم بالضغط عليها ستفتح لك الواجهة التالية: أين يمكنك نسخ ولصق الصورة مباشرة هنا، أو حفظها في المكان الذي تريد ثم رفعها مجددا هنا في التعليقات.
  13. دعنا نفهم أولا بنية ملفات XAMPP أولا نجد ملفات قاعدة البيانات وعادة ما تكون موجودة في مجلد database داخل مجلد تثبيت XAMPP وتحتوي على قواعد البيانات التي أنشأتها باستخدام MySQL ونجد أيضا ملفات المواقع التي تقع في مجلد htdocs، حيث يتم تخزين ملفات مواقع الويب التي تعمل عليها ثم ملفات التكوين وتوجد في مجلد etc وتحتوي على ملفات تكوين مختلفة لـ Apache وMySQL وغيرها. أرجو توضيح نوع الملف الذي تقصده، ف XAMPP يخزن بياناتك في ملفات ومجلدات مختلفة، وهذه الملفات هي التي تحتوي على قواعد بياناتك، ملفات موقعك، وإعدادات النظام وغيرها. لتحديد الملف يمكنك البحث عنه من خلال مستكشف الملفات في واجهة التطبيق، ثم حدد نوع الملف فمثلا لو كنت تريد نقل قاعدة البيانات يمكنك اتباع هذه الخطوات: في phpMyAdmin: اختر قاعدة البيانات ثم "تصدير". نقل الملف: انقل الملف الذي تم تصديره إلى المكان الجديد. في phpMyAdmin الجديد: اختر "استيراد" وقم بتحديد الملف.
  14. كمبرمج مبتدئ، استخدام مكتبة مثل NextAuth مع Next.js خيار جيد، فباستخدامه ستحصل على العديد من الميزات والتسهيلات، لكن في النهاية، الهدف هو أن تصبح مطورا متمكنا قادرا على اتخاذ قرارات مباشرة حول متى تستخدم المكتبات الجاهزة ومتى تنفذ الحلول بنفسك، ومع الوقت والممارسة، ستطور الحس السليم لاتخاذ هذه القرارات بناء على احتياجات كل مشروع. لكن كنصيحة، ابدأ باستخدام المكتبة وهذا سيساعدك على فهم الأساسيات بعد ذلك، ابدأ في تعلم المفاهيم الأساسية للأمان مثل التشفير والتحقق من الهوية ثم قم بتخصيص المكتبة أي حاول تخصيص المكتبة التي تستخدمها لتناسب احتياجات تطبيقك بشكل أفضل بعدها يمكنك الانطلاق في بناء نظامك الخاص بعد أن تكتسب خبرة كافية.
  15. طريقة المتابعة مع دروس الدورة تختلف من طالب إلى آخر، لكن العامل المشترك كله هو القدرة على الصبر والاجتهاد المستمر، بخصوص التمارين يمكنك إيجادها في نهاية كل درس أو مسار يقوم المدرب بتقديمها للطلبة بغرض الوصول للحل من تلقاء أنفسهم وتفكيرهم الخالص، من خلال اعتماد مهارات التفكير واستغلال ما تعلموه نظريا، كما أنّ المشاريع الموجودة في المسارات بحدّ ذاتها يمكن اعتبارها تمارين ومشاريع يمكن للطالب أن يبدع فيها فبعدما ينتهي الدرس وتنتهي المتابعة مع المدرب، الطالب المبدع والمبرمج الجيد هو الذي يستخلص من الدروس ويبدع في تلك المشاريع بأسلوبه الخاص، اطلع على المزيد من النصائح من هنا:
  16. نظريا الأمر ممكن، لكن هناك عدة عوامل يجب مراعاتها لضمان أداء جيد وحماية البيانات، فالشرط المهم هنا هو أن تكون البنية التحتية جاهزة لذلك، فمن بين الحلول الشائعة والمعمول بها، هي اختيار خطة استضافة مناسبة بحيث تتوفر على الموارد الكافية لاستقبال عدد كبير من الطلبات إضافة إلى توزيع الحمل فإذا كان المتوقع أن يكون الضغط على الموقع مرتفعا جدا، يمكن استخدام تقنيات توزيع الحمل مثل Load Balancing. يمكنك الاطلاع على ذلك المفهوم من خلال هذه المقالة:
  17. لتطبيق LabelEncoder على البيانات سنحتاج إلى استخدام مكتبة pandas لتحميل البيانات ومكتبة scikit-learn لتطبيق التشفير هذا مثال للتوضيح فقط: import pandas as pd from sklearn.preprocessing import LabelEncoder file_path = 'diabetes_prediction_dataset.csv' data = pd.read_csv(file_path) هنا قمنا باستدعاء المكتبات اللازمة للعمل وقمنا بتحميل البيانات من ملف CSV. print(data.head()) بعدها نقوم باستظهار البيانات وقراءتها من خلال الدالة print. columns_to_encode = ['Gender', 'Outcome'] label_encoders = {} for column in columns_to_encode: le = LabelEncoder() data[column] = le.fit_transform(data[column]) label_encoders[column] = le print(data.head()) encoded_file_path = 'encoded_diabetes_prediction_dataset.csv' data.to_csv(encoded_file_path, index=False) بعدها نقوم باستعراض أول 5 صفوف من البيانات لتحديد الأعمدة التي تحتاج إلى تشفير ونقوم بتطبيق LabelEncoder على الأعمدة المختارة ثم استعراض البيانات بعد التشفير وحفظها ضمن ملف.
  18. افتح ملف .htaccess في المجلد الرئيسي لموقعك وأضف الكود التالي: RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^([a-zA-Z0-9_-]+)$ $1.php [L] هذا الكود يقوم بإعادة كتابة أي رابط بدون امتداد بحيث يتم توجيهه إلى الملف .php المقابل، فمثلا إذا كان لديك ملف about.php، يمكنك الوصول إليه عبر الرابط about فقط.
  19. نعم يمكنك استخدام FastAPI لجعل نموذج تعلم الآلة الخاص بك تفاعليا سواء كتطبيق ويب، أو تطبيق موبايل، أو حتى تطبيق سطح المكتب. يمكنك بناء API للتفاعل مع نموذج تعلم الآلة الخاص بك، و هذا عن طريق إنشاء نهايات لإرسال واستلام البيانات كإرسال بيانات للنموذج وتلقي التوقعات.
  20. هي مكتبة لبناء واجهات برمجة التطبيقات أو API، و تتميز بأنها سريعة وسهلة الاستخدام وتعتمد على كتابة التعليمات البرمجية بطريقة حديثة، من أهم مميزاتها الأداء العالي فهي تستخدم محرك Starlette وUvicorn، مما يجعلها سريعة جدا وقابلة للتوسعة، كما توفر تكاملا ممتازا مع Swagger وRedoc، مما يسهل عملية توثيق النهايات بشكل تلقائي وتفاعلي، ويسهل اختبارها وفهمها، و تدعم المكتبة استخدام WebSockets وGraphQL، مما يتيح بناء تطبيقات تعتمد على هذه التقنيات بسهولة. يمكنك الإطلاع على هذه المساهمة لتفهم أكثر :
  21. لا، فبطبيعة الحال فإن استخدام Keras لا يغني عن تعلم TensorFlow بشكل كامل. بالرغم من أن Keras هي مكتبة واجهة برمجة تطبيقات عالية المستوى ومبنية على TensorFlow إلا أنه لا يزال هناك العديد من المواقف التي قد تحتاج فيها إلى فهم TensorFlow بشكل مباشر، بشكل عام، يعد Keras نقطة انطلاق رائعة لتعلم التعلم العميق، ولكن من المهم أن تكون على دراية بحدوده. إذا كنت ترغب في أن تصبح خبيرا في التعلم العميق، فستحتاج في النهاية إلى تعلم TensorFlow لا محالة، يمكنك مراجعة هذه المصادر للفائدة:
  22. الأمر بسيط، لكنه يحتاج إلى إلمام بالتقنيات واللغات المستخدمة في كل من الفرونت أند والباكند، فأولا يجب عليك أن تختار لغة أو إطار عمل معين لتنطلق في البرمجة به مثلا لنفترض أنك ستعمل بال NodeJs هنا ولتحقيق عملية الدمج والربط سيتوجب عليك القيام بإنشاء API لربط واجهة المستخدم الأمامية بالواجهة الخلفية التي أنشأتها بعدها تأتي مرحلة نشره على خادم ويب ثم تقوم بدمجهما باستخدام مكتبات جافا سكريبت ومعالجة الاستجابات وتأمين الاتصال. في حالة ما كان هنالك فريق يعمل معك، فسيتوجب عليك وضع توثيق لما تعمل عليه كي يستطيع العمل من بعدك بأفضل طريقة ممكنة وألا يتوقف العمل، ففي أغلب المشاريع يفتقر المبتدؤون إلى مهارة توثيق أكوادهم، وعدم كتابتها بشكل نظيف ممّا يعيق عملية فهمها ويصعّب من مهمّة ربط الفرونت أند بالباكند. إن رغبت في المزيد من الشروحات ستجدها من هنا:
  23. لا، كثرتها لا تعني أنها ستؤثر على الموقع خاصتك، لذا فاقتراحك في محلّه، أما بالنسبة لسؤالك الثاني فما دام الموقع يعمل بشكل جيد على الـ localhost، فالأكواد الغير مرتبة داخل الملفات قد تؤثر على عدة جوانب عند رفعه على استضافة مدفوعة، من ناحية صيانة الكود بالدرجة الأولى فالأكواد غير المرتبة قد تجعل صيانة الموقع وتطويره أكثر صعوبة، ويصبح من الصعب تتبع الأخطاء أو إجراء تحسينات في المستقبل لكن من ناحية الأداء فكلاّ لأنه ليس لها دخل مباشر في تنفيذ الكود ما دام ليس هنالك أخطاء، لكن من المهم مراجعتها وتدقيقها خاصة إذا كان هناك تكرار غير ضروري أو أكواد غير مستخدمة ولم يتم تعليقها أو حذفها، من ناحية أخرى قد تزيد من احتمالية وجود ثغرات أمان لأن الأخطاء قد تكون غير ملحوظة لهذا أنصح بشدة بترتيب الأكواد وتنسيقها، فمثلا في حالة ما إذا كنت تعمل ضمن فريق ما، فإن الأكواد غير المرتبة قد تجعل التعاون أكثر تعقيدا وتؤدي إلى مشاكل في التنسيق بين أعضاء الفريق لذا من الأفضل دائما ترتيب الأكواد وتنظيفها قبل رفعها على الاستضافة لضمان أداء أفضل وسهولة في الصيانة.
  24. يجب عليك أولا استخراج جميع الصور والعناصر البصرية المستخدمة في التصميم بعدها تنشئ ملف HTML جديد باستخدام محرر نصوص وإضافة الهيكل الأساسي للصفحة باستخدام عناصر HTML مثل <header> لرأس الصفحة، <nav> للقائمة الجانبية، <main> للمحتوى، و<footer> للفوترـ ثم تقوم بإضافة تنسيقات CSS لتحديد تخطيط العناصر وتنظيمها باستخدام تقنيات مثل Flexbox أو Grid. أخيرا، تقوم بدمج الصور والعناصر البصرية في الصفحة باستخدام علامات HTML المناسبة وتنسيقها بواسطة CSS لتتناسب مع التصميم الأصلي. بالنسبة لك كمصمم قد لا تكون ملمّا جيدا بهذه التقنيات، لذا عليك إما تعلمها وإتقانها أو الاستعانة بمبرمج متمكن وملمّ بلغات البرمجة وتطوير الويب.
  25. خاصية التحميل غير متاحة على منصة الأكاديمية حفاظا على عامل الأمان وسرقة المحتوى المعروض، ضمانا للعدل. بما أن الشبكة لديك ضعيفة فربما ذلك هو السبب وراء توقف الفيديوهات لديك وليس الأمر راجعا إلى توقف السيرفيرات أو بطئها فهي تعمل بشكل جيد، أنصحك بترك الفيديو متوقفا بشكل مؤقت ريثما يتم تحميله في المتصفح ثم مشاهدته كاملا بعد ذلك. بما أنت النت ضعيف لا تحاولي وضع نوعية وجودة الشاشة في أقصى قيمة.
×
×
  • أضف...