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

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

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

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

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

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

    13

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

  1. أولاً يمكنك في python 3 استخدام super كالتالي class Child(SomeBaseClass): def __init__(self): super().__init__() ثانياً في المثالين السابقين ستكون النتيجة واحدة ولكن الفرق بينهما؟ أن في الحالة الأولى لا تحتاج لكتابة SomeBaseClass وبالتالي توفر لك فائدة الوراثة من أكثر من class كالتالي class First(object): def __init__(self): super(First, self).__init__() print("first") class Second(object): def __init__(self): super(Second, self).__init__() print("second") class Third(First, Second): def __init__(self): super(Third, self).__init__() print("third")
  2. أولاً تطوير المواقع بستخدام لغة ال php ليست محدودة ومقتصرة على ال cms وأجد أنك تتحدث عن ال wordpress ولكن ال wordpress هو cms أي أنك تحصر إمكانيات اللغة البرمجية في ال wordpress وللعلم تستطيع عمل أي موقع تريده باستخدام ال php ويمكنك استخدام الإطار laravel بدلاً من wordpress إذا كنت لا تريد بناء موقع cms ويمكنك أيضاً بناء api للموقع عن طريق php ولكن هناك خيار يناسب التطبيقات التي تريد بنائها وهو ال node js فيمكنك من خلالها بناء ال api بشكل أفضل وأسهل من ال php
  3. قم بالضغط على السهم الموجود بجانب كلمة "أضف مشروع مماثل" وستظهر لك قائمة قم بإختيار إلغاء المشروع
  4. هل تقصد الأكواد الموجودة في دروس هذه المسارات ؟ إذا كان كذلك فإنه لا يوجد ملفات من دروس اساسيات html أو css حيث يجب عليك فهم طريقة عمل الأكواد والتعرف عليها فقط وحتى تستطيع كتابة الأكواد بنفسك بعد المتابعة مع كل درس بينما في المسارات القادمة ستجد العديد من المشاريع ومع كل مشروع ستجد الملفات الخاصة به أما إذا كنت تسأل عن المشروع الموجود بعد دروس اساسيات html أو css وهو بناء موقع شخصي فيمكنك أنه تجده في هذا الدرس أسفل الفيديو
  5. نعم يمكنك إرسالها مع المرفقات وتأكد من تسليم جميع الملفات بشكل سليم ثم بعد ذلك قم بتسليم المشروع ستجد كلمة "تسليم المشروع" ف أعلى اليسار في الموقع في الصفحة الخاصة بالمشروع حتى يوافق عليه العميل يصبح المشروع مكتمل و تصلك الأموال
  6. يحدث ذلك لأن في صفحة ال navbar يوجد section يسمى home يأخذ إرتفاع الواجهة وبالتالي ال header ينزل إلى بعد ال home وبالتالي قومي بحذف ال home <nav class="nav"> ... </nav> <section class="home"> <!-- section قومي بحذف هذا ال --> </section> أو يمكنك وضع ال header بداخل ال home
  7. من الطبيعي أن يكون صعب فإن كنت مكان العميل من ستختار وتقبل له العرض المستقل الجديد على المنصة الذي لم يكمل أول عمل له أم من له العديد من المشاريع المكتملة والتقييمات العالية؟ حسناً ربما تقول أن العمل مستحيل ولكن ذلك غير صحيح حيث يمكن لأعمالك السابقة أن تجعل العميل يثق في مهاراتك وتوجد العديد من العوامل التي تساعد في الحصول على أول عميل ويمكنك أن تجد ذلك في الإجابات على هذا السؤال أو هذا وبالأخير فهذه أرزاق وتعتمد على جهدك والأمر ليس بتلك الصعوبة التي تتخيلها فقط يحتاج للمتابعة
  8. يحتاج البرنامج لإدارة واستخدام الذاكرة لحفظ المتغيرات والقيم ولذلك يقوم بتخصيص أجزاء من الذاكرة وحذفها عند عدم الاستخدام وهذا هو التعريف ببساطة وتوجد لغات برمجية تقوم بعمل ذلك ذاتياً بدون تدخل منك مثل JavaScript وهناك أيضاً لغات تحتاج لإدارة الذاكرة يدوياً ويالطبع يمكن أن يقل أداء البرنامج لسوء استخدام الذاكرة مما يسبب memory leak وأما بالنسبة لل JavaScript فلا تحتاج لعمل ذلك يدوياً لأن اللغة تقوم بذلك تلقائيا
  9. هل تقصد البدأ في التقدم على عمل ومشاريع لعملاء؟ إذا كان كذلك فالأفضل أن تنتظر لنهاية الدورة لأن توجد بعض المشاريع بعد مسار بناء خمسه صفحات هبوط أكثر إحترافية وستتعلم المزيد من المعلومات و التقنيات حيث ستكون قادر على تنفيذ العديد من المشاريع المطلوبة كتحويل design إلى html و css والعديد من المشاريع الأخرى الخاصة بال frontend أما إذا كنت تقصد العمل على مشاريع كتدريب؟ هذه المشاريع التي تبنيها ستتزيد من خبرتك في المجال وستتطور معها وما يجب عليك عند التطبيق هو فهم كل جزء من الشرح وبعدها أيضاً تستطيع عمل أي مشروع خاص بال frontend
  10. ماذا تقصد بالرقم ؟ على العموم يمكنك التأكد من وجود قيمة في ال dictionary من خلال ال دالة .values كالتالي numbers = {'1': 'one', '3': 'three', '2': 'two', '5': 'five', '4': 'four'} 'one' in d.values() True وتقوم هذه الدالة بإرجاع قيمة true إذا كانت القيمة موجودة أو false إذا لم تكن موجودة
  11. يمكنكي أن تستخدم مكتبة os.path وهي توفر دالة ()exists وهذه الدالة تقوم بإرجاع قيمة true أو false كالتالي import os.path os.path.exists(file_path) وتوجد أيضاً دالة ()isfile للتأكد إذا كان ملف أم لا كالتالي os.path.isfile(file_path) ولا تنسي إستدعاء المكتبة
  12. هماك خطأ بسيط في الكود وهو المجال ل this في ال setTimeout حيث سوف تعود ال this للكائن window وليس ال component ولذلك يمكننا حل هذه المشكلة عن طريق عمل binding عن طريق توليد دالة جديدة بمجال scope محدد setTimeout(function(){this.setState({count: 1})}.bind(this), 3000); أو يمكنك استخدام ال arrow function كالتالي setTimeout(()=>this.setState({count: 1}), 3000);
  13. يمكننا تقسيم ال rule التالية '&$checked' لجزئين & هذه العلامة تعني ال rule الأب أي في حالتنا هنا فهو ال root checked$ فهي تقوم بتوليد rule جديد من نفس ال rule الموجود في المثال الموجود سيكون ال rule الناتجة هي "root.checked:"
  14. لا يمكنك أن تقول أن مجال ما أكثر ربحاً من مجال لماذا؟ لأنه يجب الأخذ في الإعتبار عدد الفرص المتاحة عدد ال frontend developer حول العالم متوسط دخل ال frontend developer وهناك العديد من المتغيرات الأخرى ولكن عموماً يمكنك كسب مرتب يختلف على حسب مدى احترافيتك ربما نقارن تطوير واجهات المستخدم مع مجال آخر مثل ال backend ستجد الفرص المتاحة ل تطوير واجهات المستخدم أكثر من الفرص لل backend ولكن عدد مطوري واجهات المستخدم أكثر والعائد المادي أقل من ال backend ولذلك فتحديد المجال الأكثر ربحاً يعتمد على العديد من المتغيرات ولكن عند إتقانك للمجال الذي تحبه ستجد الفرص متاحة أمامك بسهولة
  15. سقوم بتوضيح الخطوات المطلوبة ثم يمكنكي بعدها التطبيق باللغة التي تريديها ويعتبر هذا البرنامج سهل وما تحتاجين إليه هو القيام بإنشاء حلقة تكرار على ال list وفي داخل الحلقة تقومي بحذف ال key الموجود في ال list كالتالي del dic[k] حيث يعتبر ال k هو عنصر من ال list على حسب كل حلقة تكرار
  16. لمن تريد إرسال الرسالة ؟ إذا كنت تريد التواصل مع مركز المساعدة يمكنك من خلال هذا الرابط التواصل معهم أما إذا كنت تريد التواصل مع أحد من المدربين أو الأعضاء يمكنك الدخول لملف العضو وستجد علامة الرسالة قم بالضغط عليها ثم قم بكتابة الرسالة التي تريدها
  17. يعتبر ذلك طبيعي لماذا لأن ال جملة ag1&ag3 لم تأخذ عرض محدد لذلك تأخذ العرض الذي يساوي 1 column ويناسب عرض الجملة بالضبط لذلك لا يؤثر التوسيط ولكن إذا قمت بوضعها داخل span وقمت بإعطائه عرض أكبر من 1 column سترى النتيجة لذلك قم بالتعديل التالي وسترى الجملة يحدث لها توسيط <span class="ag1"> ag1 <br> 1 of 11</span> ثم قم بإضافة التنسيقات التالية .ag1{ background: white; grid-column:1/3; grid-row:1/2; }
  18. يعتبر هذا المشروع هو نظام تشغيل لل desktop ولكن من خلال الويب وتحتاج لاستخدامه تنزيل ال go language من خلال هذا الرابط تحتاج بعد ذلك تنزيل المستودع الخاص بالمشروع على جهازك git clone https://github.com/tobychui/arozos ثم بعد ذلك قم بفتح ال cmd من داخل المجلد arozos/src أو يمكنك تغيير المسار من خلال cd .\arozos\src\ وأخيراً قم بعمل build للمشروع من خلال go build
  19. سأوضح لك فكرة عمل البرنامج ثم يمكنك بعد ذلك تطبيق الخطوات باللغة التي تتقنها يتم أخذ رقمين من المستخدم وحفظ كل رقم في متغير يمكنك معرفة أي الرقمين أكبر عن طريق الدوال الجاهزة كتابة حلقة التكرار وسيكون بداية الحلقة هو الرقم الأصغر في حالة الإتجاه التصاعدي أو الرقم الأكبر في حالة الإتجاه التنازلي يمكن التحويل بين الإتجاه التنازلي أو التصاعدي عن طريق ال if
  20. أولاً بهذه المهارات التي تعلمتها يمكنك بناء أي موقع مهما كان ولكن طبعاً ستحتاج للتطبيق كثيراً لمعرفة الطرق المختلفة لتنفيذ مهمة معينة وإكتساب الخبرات وتعلم أفضل الممارسات عند العمل ك frontend ثانياً بعد تخطي الخطوة السابقة سيكون عليك تعلم الأدوات والتقنيات التي ستسهل عليك العمل وجعل بيئة التطوير أكثر إنتاجية مثل bootstrap لتسهيل العمل ب css وأيضاً أحد إطارات العمل للجافاسكربت لأنها أصبحت الأن من المتطلبات اللازمة لل frontend ولتطوير بيئة العمل ستحتاج لتعلم شيئاً مثل webpack للقيام ببعض المهام المتكررة بالطبع ستتعلم مع webpack بعض التقنيات مثل npm وللعمل مع فريق كامل بشكل متناسق ستحتاج لتعلم git بالطبع أمامك الكثير لتعلمه ولذلك لا تنظر للوقت الذي تحتاجه للتعلم لأنك لن تتوقف عن التعلم إذا أردت أن تكون من المحترفين
  21. توجد العديد من الطرق مثل عن طريق الوسم style في أعلى صفحة ال html <style> <!--يتم وضع التنسيقات هنا--> </style> ال inline-style عن طريق الخاصية style للعنصر <h1 style="color: red;"></h1> ال style sheet وهو عن طريق ربط صفحة ال html بصفحة منفصلة تحتوي على تنسيقات الcss <link rel="stylesheet" href="style.css"> ولكل طريقة استخدام ومميزات ولكن الطريقة الأحتراقية والشائعة هي ملف خاص بال css
  22. أولاً ال gatsby و ال next يستخدمان ال react لذلك ما هما إلا تطوير لل react ولكن ما هو التطوير الذي سأستفيد منه باستخدام أياً منهما NEXT يقوم بتسهيل العمل بال react مثل إختصار كتابة ال routes وإستبدالها ب routes ذاتياً إعتماداً على مجلدات وملفات المشروع والوظيفة الأكثر أهمية هي ال server side rendering مما تساعد بشكل كبير على تحسين ال SEO للموقع gatsby يعتبر static site generator وهو مفهوم جديد للمواقع الديناميكية بحيث يتم فيه الإستغناء عن استخدام قواعد البيانات وبالتالي اتخدام ال backend فمثلاً يمكنك بناء مدونة وإضافة محتوى جديد بدون أي cms ويمكنك أيضاً استخدام ال NEXT ك static site generator لذلك يمكنك استخدام التقنية التي تخدم الأهداف المطلوبة للمشروع
  23. حاول أن تجرب تحديث الإعدادات لل npm عن طريق التالي مسح الإعدادات npm config delete prefix ثم بعد ذلك قم بتنفيذ الأمر التالي npm config set prefix /usr/local ثم أخيراً قم بإعادة تثبيتها npm i -g gatsby-cli وجرب هل تم تثبيتها أم لا
  24. هناك خطأ بسيط وهو حول ال export و ال import حيث نحتاج عند عمل import بالطريقة التي قمت بها أن يكون ال export default كالتالي import React from 'react'; export class Navbar extends React.Component {//default لاحظ كلمة render(){ return ( <ul className="navbar navbar-full"> ... </ul> ); } } أما إذا أردت عمل import ولكن بدون استخدام ال default export أو تحتاج لاستخدام named export يجب عليك وضع ال {} حول الكائن الذي تريد إستدعائه كالتالي import React from 'react'; import ReactDOM from 'react-dom'; import {Navbar} from './components/navbar.jsx';//{ } لاحظ ال export class App extends React.Component{ render(){ return( <Navbar /> ... ); } } ReactDOM.render(<App />, document.getElementById('root'));
  25. أولاً هذا الخطأ error overlay الخاص ب react يظهر فقط في وضع ال Development mode ولن يظهر في ال production mode ويمكنك تعطيل ذلك عن طريق package تسمى react-error-overlay وتستخدم الدالة stopReportingRuntimeErrors كالتالي أولاً تقوم بإضافة ال package yarn add react-error-overlay ثم قم بعد ذلك بإستخدامها في ال root قبل استخدام ال render كالتالي import { stopReportingRuntimeErrors } from "react-error-overlay"; if (process.env.NODE_ENV === "development") { stopReportingRuntimeErrors(); } .بعد عمل الخطوات السابقة لن تظهر error overlay مرةأخرى
×
×
  • أضف...