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

Hassan Hedr

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

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

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

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

    38

كل منشورات العضو Hassan Hedr

  1. يجب تعريف المتغير PersonContext مرة واحدة خارج أي مكون لتتمكن من الوصول إليه من داخل أي تابع، في حالتك يكون شكل الاستخدام والتعريف كالتالي: const PersonContext = React.createContext(); // يعرف خارج أي تابع const Context = () => { ... return <PersonContext.Provider>...</PersonContext.Provider> } const SinglePerson = () => { const data = useContext(PersonContext) ... }
  2. لا يمكن ذلك مباشرة حيث أن الحالة هي خاصة داخل المكون نفسه ولا يمكن لمكون الآخر محاولة التعديل فيها، يمكن بدل من ذلك تمرير خصائص props للمكون كالتالي <MyComponent propName='قيمة الخاصية'/> ومن داخل المكون يمكن الوصول إليها إما عبر this.props في مكونات الصفوف: class MyComponent extends Component { ... function render() { ... this.props.propName; ... } } أو من خلال أو معامل للمكونات التابع: function MyComponent(props) { ... props.propName ... }
  3. يجب إرفاق المثال الذي تعمل عليه كنص وتنسيقه كشيفرة مع توضيح استفسارك تمامًا على المثال الذي تواجه فيه المشكلة
  4. إذا كنت تستخدم مكون صف Class Component يمكنك استدعاء التابع setState من صنف المكون وتمرير غرض يحوي القيم التي تريد تغييرها كالتالي class MyComponent extends Component { ... function render() { ... this.setState({ state: 'القيمة الجديدة' }); ... } } بينما إذا كنت تستخدم مكون تابع Functional Component يمكنك استخدام الخطاف useState سيعيد لك مصفوفة العنصر الأول منها هو الحالة والثاني هو تابع لتغيير الحالة يمكن تمرير القيمة له مباشرة كالتالي function MyComponent() { const [state, setState] = useState(); ... setState('القيمة الجديدة'); ... } يمكنك مراجعة المقال التالي لقراءة المزيد
  5. تأكد من أن مكون السطر row خارج محتوى الكروت جميعها وليس داخل تابع map، لتكون النتيجة شبيهة بالتالي <!-- الطريقة الصحيحة --> <div className="row"> { data.map(e => (<div className="col card">...</div>)} </div> وليس كالتالي <!-- طريقة خاطئة --> data.map(e => ( <div className="row"> <div className="col card">...</div> </div> ))
  6. يوجد خلال الدروس تطبيق عملي للمفاهيم التي يتم شرحها، ففي البداية يتم تنفيذ مشروع لعبة صغير باستخدام سكراتش، للمساعدة في فهم مفاهيم أساسية في البرمجة، ثم في المسار التالي تنتقل للتطبيق ما تعلمته ضمن أول لغة برمجة ستتعلمها وهي جافاسكريبت، والمسارات اللاحقة تغطي مفاهيم في انظمة التشغيل ولينكس تحديدًا ستتعلم كيف تتعامل معه،و قواعد البيانات والويب والبرمجة الكائنية والخوارزميات وانماط التصميم. يمكنك الاطلاع على صفحة التعريف بدورة علوم الحاسوب لمعرفة المزيد. جميع الدورات تركز على الجانب العملي التطبيقي ليخرج المتدرب بفهم متين وقدرة على تنفيذ المشاريع والدخول لسوق العمل.
  7. ستكون الاستفادة الكبرى لديك من هذه الدورة هي من مسار الخوارزميات والتفكير المنطقي يمكنك البدء بقراءة المقالات التي ذكرت سابقًا فهي ستعطيك أساس جيد في اللغات التي تريد تعلمها ++C و بايثون
  8. موسوعة حسوب تعتبر مرجعًا للمطورين العرب تحوي مراجع لعدة لغات وباللغة العربية. خلال تعلمك جافاسكريبت يمكنك الرجوع والبحث ضمن مرجع جافاسكريبت داخل الموسوعة. مثلا يمكنك قراءة مرجع دالة ()getDate لمعرفة طريقة استعمالها. يمكنك أيضا قراءة المقال التالي الذي يشرح الغرض Date في تمثيل التاريخ والوقت في جافاسكربت بشكل كامل:
  9. لا أظن ذلك، مع أن الدورة لا تركز على خصائص جافاسكريبت بل تقوم بواسطة جافاسكريبت بشرح مفاهيم عامة برمجية، ستواجه صعوبة بمحاولة المتابعة مع دروس الدورة في حال كنت تعمل ضمن لغة أخرى، لكن لا شيء يمنع من تطبيق الأفكار نفسها على لغة مختلفة أنت على دراية بها بما أنه لديك تجربة مع أساسيات لغة برمجة فهذا المسار ضمن الدورة سيمكن تلك الأساسيات فقط، الاستفادة الكبرى ستحققها من باقي المسارات ضمن هذه الدورة.
  10. Express مستخدمة بشكل أوسع يمكنك معرفة ذلك عن طريق مراقبة عدد التحميلات الأسبوعية لكل منها على npm الأرقام الحالية هي: Express JS حوالي 20 مليون تحميل أسبوعيًا Loopback حوالي 38 ألف تحميل أسبوعيًا يمكنك القراءة عن Express وتعلم مزاياه وكيفيه استخدامه عبر المقال التالي ويمكنك قراءة سلسلة مقالات مدخل إلى express ومقالها الأول:
  11. دورة علوم الحاسوب ستتدرب خلالها على المفاهيم التالية: مدخل إلى علوم الحاسوب أساسيات البرمجة أنظمة التشغيل ولينكس قواعد البيانات إلى عالم الويب البرمجة الكائنية الخوارزميات وبنى المعطيات أنماط التصميم أي الدورة مناسبة لمن يريد دخول مجال علوم الحاسب بشكل عام من ناحية فهم الأساسيات والأنماط والخوارزميات والتعامل مع قواعد البيانات وأنظمة تشغيل لينكس. ما تطلبه هو "خبرة" جيدة في كل من ++C و Python، الخبرة تحتاج أولا لتعلم تلك اللغات بشكل جيد، ثانيًا والأهم تطبيقها ضمن عدة مشاريع ليكون المطور قادرًا مستقبلًا على توظيف تلك اللغات في حل المشكلات المطلوبة. يمكنك مراجعة سلسلة مقالات دليل تعلم بايثون والبدء من أول مقال يمكنك مراجعة أيضًا سلسلة مقالات ++C للمحترفين والبدء من أول مقال
  12. حاول حل السؤال بنفسك، وإذا واجهتك مشاكل خلال الحل يمكنك إرفاق الكود بشكل منسق ضمن سؤالك وشرح المشكلة التي تواجهها وسيقوم الزوار بمساعدتك
  13. يرجى إرفاق الشيفرة بشكل كامل، ومحاولة حل المشكلة وعند ظهور أخطاء أو مشاكل توضيح المشكلة التي تواجهها بشكل واضح ليتمكن زوار الأكاديمية من مساعدتك
  14. إذا كنت تقصد مصارد تعلم مجانية لعلوم الحاسوب غير الدورات المدفوعة هنا، فيوجد في الأكاديمية العديد من مصادر التعلم المجانية: يمكنك البدء بالمقال التعريفي التالي والذي سيعطيك نظرة شاملة عن هذا المجال: ويمكنك متابعة قسم المقالات البرمجية وقسم الكتب البرمجية يتم دوما الإضافة فيها لمواضيع جديدة منها العامة ومنها التخصصية المعمقة.
  15. احرص على تحميل نسخة PHP من النوع Thread Safe، ستجد داخلها الملفات المطلوبة جميعًا، جرب تحميل هذه النسخة
  16. الملفات المشفرة باستخدام ioncube 8 وما فوق لا يمكن فك تشفيرها إطلاقًا، يجب عليك شراء مفتاح لها من الجهة المطورة لها لفك تشفيرها، إحذر أيضا من التعرض لخداع من قبل الخدمات على الانترنت التي تعدك بفك تشفير محتوى هذه الملفات بمقابل مادي.
  17. تأكد من أسماء الملفات التي بدلتها أن تكون صحيحة وموجودة بالنسخة الجديدة ضمن مجلد php الجديد قد يكون اسمها مختلف لديك، وأن تكون قد نسخت مجلد PHP الجديد لمكانه وسميته إلى php، كما في التعليمات السابقة. حاول تعديل السطر التالي أيضا وإضافة رقم 7 هنا: LoadModule php7_module"D:/xampp/php/php7apache2_4.dll" ^
  18. حمل نسخة PHP التي تريدها من هنا اذهب إلى مجلد XAMPP ستجد داخله مجلد PHP وهو النسخة الحالية التي تستخدمها، بدل حذف هذا المجلد فقط قم بإعادة تسميته مثلا إلى "php_8" فك ضغط مجلد PHP الذي حملته في أول خطة، وقم بنقل المجلد إلى مجلد XAMPP، مع تسميته php الآن نريد ضبط Apache ليستخدم ملفات PHP الجديدة، نقوم بفتح الإعدادات من هنا: ستجد في ملف الإعدادات مسارات لملفات مشابهة للتالية، سنحتاج لتعديل الملفات المشار إليها بالملفات المماثلة لها من النسخة التي تم تحميلها: LoadFile“D:/xampp/php/php8ts.dll” ^^^^^^^^^^ LoadFile"D:/xampp/php/libpq.dll" LoadModule php8_module“D:/xampp/php/php5apache8_0.dll” ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ مثلا بعد التعديل تصبح الإعدادات كالتالي: LoadFile"D:/xampp/php/php7ts.dll" LoadFile"D:/xampp/php/libpq.dll" LoadModule php7_module"D:/xampp/php/php7apache2_4.dll" قم بحفظ وإغلاق ملف الإعدادات. أعد تشغيل مخدم XAMPP إذا واجهت مشاكل بعد إعادة التشغيل، فقط تأكد من أسماء الملفات المماثلة في الخطوة 5.
  19. هذا مجرد تحذير وليست مشكلة أو خطأ ما، ومصدره هو طريقة عمل القالب الذي تستخدمه وتحديدا قسم التخصيصات، حاول تغيير نسخة PHP التي تعمل عليها إذا كنت تعمل على نسخة 8 حاول تغييرها إلى 7.4 مثلا.
  20. المقال يجب ان يضيف للقارئ معارف جديدة، يمكن أن يكون شرحًا عن موضوع ما أو شرح عن مجال ما، أو تدريب على خطوات تنفيذ عمل معين، أو كما ذكرت تقدم مشكلة وحلًا لها، يجب أن تكون صياغة المقال بسيطة وواضحة بعيدة عن الجمل الإنشائية، اقرأ قسم اكتب معنا لمعرفة المزيد، واذا كان لديك مقال جاهز تود نشره حاول التواصل مع مركز الدعم وطلب نشر المقال في الأكاديمية
  21. يمكنك التسجيل في دورة تطوير تطبيقات الويب باستخدام لغة PHP هنا في الأكاديمية، ستحصل على محتوى الدورة بشكل دائم ومتجدد وفيها مسار خاص لتطوير قوالب ووردبرس منذ البداية حتى طريقة نشرها مع أمثلة عملية وستحصل في نهاية الدورة إن أتممتها على شهادة من الأكاديمية وستصبح مؤهلا للعمل في هذا المجال
  22. تأكد من وجود مخزن مفاتيح Keystore في المسار التالي المنزل للمستخدم الحالي لك: %userprofile%/.android/debug.keystore إن لم يكن موجودًا يمكنك توليده عبر تنفيذ الأمر التالي ضمن المجلد android. السابق: keytool -genkey -v -keystore debug.keystore -storepass android -alias androiddebugkey -keypass android -keyalg RSA -keysize 2048 -validity 10000
  23. سيتم إظهار مربع الحوار هذا عندما تحاول طلب السماحية عن طريق requestPermissions
  24. توفير صفحة index.php فارغة هو ليس من باب الأمان بل فقط كما ذكرت حتى إذا تم زيارة مسار مجلد الإضافة (عن طريق الخطأ أو القصد) لن يظهر للعميل خطأ 404 أي أنه لا يوجد مثل هذا الملف بل نضع ملف index.php فارغ فقط كعُرف. لاحظ أن إضافة hello dolly ليست سوى ملف واحد وليست موجودة ضمن مجلد خاص بها، ملف index.php نضعه عندما تكون إضافتك عبارة عن عدة ملفات موجودة ضمن مجلد خاص. يمكنك أيضا وضع ملفات إضافتك ضمن مجلد خاص وكتابة شيفرة الإضافة داخل index.php نفسه وعدم تركه فارغًا، الأمر مجرد تفضيل ليس أكثر.
  25. لديك خطأ في مكان آخر يتعلق بالبحث عن المستخدم باستخدام المعرّف الخاص به من خلال User Model، تحقق من أن القيمة الممررة كمعرف للبحث عن المستخدم، يمكنك تحويل القيمة الممررة كمعرف باستخدام التابع fromString قبل تمريره للبحث كالتالي: ObjectId.fromString( /* المعرف هنا */ );
×
×
  • أضف...