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

Yomna Raouf

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

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

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

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

    65

إجابات الأسئلة

  1. إجابة Yomna Raouf سؤال في عند تنفيذ الأمر npm start تظهر صفحة المشروع فارغة - react كانت الإجابة المقبولة   
    السبب في هذا هو خطأ كتابي بسيط لديك في ملف App.js، فقد قمت بكتابة المكون weather بحرف w صغير بالرغم من أن المكون يبدأ بحرف W كبير.
    الأكواد بعد التعديل:
    import React from "react"; import './App.css'; import "weather-icons/css/weather-icons.css"; import 'bootstrap/dist/css/bootstrap.min.css'; import Weather from './app_component/weather.component'; function App() { return ( <div className="App"> <Weather/> {/* <weather /> */} </div> ); } export default App;  
  2. إجابة Yomna Raouf سؤال في لماذا كلمة bodyParser مشطوبة .. Node js ؟ كانت الإجابة المقبولة   
    لأن الدوال و التوابع الخاصة بالمكتبة تمت إضاتها إلى إطار العمل express نفسه لذلك لم نعد نحتاج لاستخدام المكتبة الآن.
    و نقوم باستخدام التوابع الخاصة بها كما يلي:
    app.use(express.json()); بدلًا من:
    app.use(bodyParser.json());  
  3. إجابة Yomna Raouf سؤال في الطريقة الصحيحة للتعامل مع النمط الشرطي في React كانت الإجابة المقبولة   
    لتنفيذ هذا الأمر عادةً ما نقوم بالتالي:
    الطريقة الأولى هي استخدام الوسم style و إعطائه attribute يسمى jsx بحيث نتمكن من كتابة أكواد javaScript داخل أكواد ال css، و يتم وضع هذا الوسم داخل ال component، لاحظ المثال التالي: import React from "react"; const Button = props => ( <button> {props.children} <style jsx>{` button { padding: ${"large" in props ? "60" : "20"}px; background: ${props.background}; color: black; display: inline-block; font-size: 1em; } `}</style> </button> ); export default function App() { return ( <div> <Button large background="orange"> click me </Button> </div> ); }  
    أو يمكنك وضع التنسيقات الخاصة بوضع معين داخل صنف ما و تقوم بكتابة التنسيقات الخاصة به في ملف styleSheet خارجي و بعدها تقوم بالتبديل بين الأصناف حسب الحالة في الملف الخاص بالمكون، لاحظ المثال التالي:
    import React, { useEffect, useState } from 'react'; import './Nav.css'; function Nav() { const [show, handleShow] = useState(false); useEffect(() => { window.addEventListener( "scroll", ()=> { if (window.scrollY > 100) { handleShow(true); } else handleShow(false); }); return () => { window.removeEventListener("scroll"); } }, []); return ( <div className={` nav ${show && "nav__black"}`}> {/* نقوم بإضافة صنف حسب قيمة الحالة */} <img className="nav__logo" src="https://upload.wikimedia.org/wikipedia/commons/0/08/Netflix_2015_logo.svg" alt = "Netflix logo" /> <img className="nav__avatar" src="https://pbs.twimg.com/profile_images/1240119990411550720/hBEe3tdn_400x400.png" alt = "Netflix logo" /> </div> ) } export default Nav;  
  4. إجابة Yomna Raouf سؤال في الصور لا تعمل بداخل الـ condition في React Native كانت الإجابة المقبولة   
    السبب في هذه المشكلة هو التنسيقات الخاصة بالصورة، حيث أنه لم يتم تحديد أبعادها.
    يمكنك إضافة الخاصية style للمكون Image و تقوم بتحديد الطول و العرض الذي تريده للصورة و ستعمل بشكل صحيح:
    الأكواد بعد التعديل:
    import * as React from 'react'; import { Text, View, StyleSheet, Button, Image } from 'react-native'; class App extends React.Component { constructor() { super(); this.state = { completed: false }; this.handleCompleteAction = this.handleCompleteAction.bind(this); } handleCompleteAction(e) { this.setState({ completed: true }); } render() { const completed = this.state.completed; return ( <View> { completed ? <Image style={{ width: "100px", height: "200px" }} source={{ uri:"https://source.unsplash.com/512x512" }} /> : <Text>اضغط على استمرار</Text> } <Button onPress={this.handleCompleteAction} title="استمرار" /> </View> ); } } export default App;  
  5. إجابة Yomna Raouf سؤال في لا يقوم React بتحميل الصور المحلية كانت الإجابة المقبولة   
    يوجد أكثر من طريقة لاستيراد لتضمين الصور المحلية في react احداها، و هي تعمل دائمًا:
    استراد الصور في بداية المكون كما يلي:
    import logo from "./images/logo.png"; و من ثمّ استخدامها في المكون كما يلي:
    <img src={logo} /> ليصبح كود المكون كما يلي:
    import React, { Component } from 'react'; import logo from "./images/logo.png"; class App extends Component { render() { return ( <div className="nav-container"> <img src={logo} /> </div> ); } } export default App;  
  6. إجابة Yomna Raouf سؤال في فتح مشاريع سكراتش على الحاسوب كانت الإجابة المقبولة   
    مرحبًا هناء.
    في البداية من المفترض أن نقوم بتثبيت التطبيق الخاص ب scratch على الجهاز الخاص بك من هنا.
    بعد الانتهاء من تنزيل التطبيق و تنصيبه، يمكنك فتح المشاريع كما يلي:
    نقوم بفتح تطبيق  scratch نضغط على file من الشريط العلوي  ستظهر لنا قائمة نختار منها load from your computer و بعدهاا توجهي إلى المسار الذي يوجد به ملف المشروع و قومي باختياره
  7. إجابة Yomna Raouf سؤال في ما حل هذه المشكلة ؟ react native كانت الإجابة المقبولة   
    تنفيذ الأمر التالي قد يحل المشكلة:
    cd android && ./gradlew clean && ./gradlew :app:bundleRelease إذا كنت داخل المجلد android بالفعل سيكون الأمر كما يلي :
    cd ./gradlew clean && ./gradlew :app:bundleRelease و لكن إن لم ينجح الأمر فهذا ما عليك القيام:
    نقوم بتنفيذ أمر البناء و لكن مع إضافة ال option التالي له:
    --warning-mode=all أو  ال option التالي مع أمر البناء الذي قمت باستخدامه كما هو موضح في رسالة الخطأ التي ظهرت لك
    --warning-mode all أي سيصبح الأمر كما يلي:
    gradle build --warning-mode=all سيوضح لك هذا الأمر وصف مفصل للمشاكل الموجودة في مشروعك مع روابط ل Gradle docs تحتوي على الخطوات التي يجب عليك اتباعها لإصلاح البناء لديك.
     
  8. إجابة Yomna Raouf سؤال في هل يمكن ان اسطب node_modules عن طريق npm install ان كان المشروع معمول ب yarn.lock ؟؟ كانت الإجابة المقبولة   
    ليس ل yarn علاقة بالأمر.
    لحل هذه المشكلة يمكنك القيام بالتالي.
    توجه إلى الملف
    {project_root}\node_modules\metro-config\src\defaults\blacklist.js فهذا الملف يحتوي على regular expression غير صحيح يحتاج لتعديل.
    سنحتاج لتعديل ال regular expression الأول في الملف  sharedBlacklist
    من:
    var sharedBlacklist = [ /node_modules[/\\]react[/\\]dist[/\\].*/, /website\/node_modules\/.*/, /heapCapture\/bundle\.js/, /.*\/__tests__\/.*/ ]; إلى:
    var sharedBlacklist = [ /node_modules[\/\\]react[\/\\]dist[\/\\].*/, /website\/node_modules\/.*/, /heapCapture\/bundle\.js/, /.*\/__tests__\/.*/ ];  
  9. إجابة Yomna Raouf سؤال في كيف احذف سؤال نشرته ؟ كانت الإجابة المقبولة   
    مرحبًا أحمد.
    لا يمكن حذف الأسئلة هنا، إذا أردت ألّا تظهر الأسئلة الخاصة بك يمكنك أن تطلب منّا أن نخفيها بعد أن تحصل على إجابة. و لكن من الأفضل أن تتركها ظاهرة حتى تعم الفائدة على الجميع فربما يكون لدى أشخاص آخرين نفس الاستفسار.
    شكرًا لك.
  10. إجابة Yomna Raouf سؤال في هل سيقوم فرق ريأكت بحذف ال class components ام انها مستمرة ؟؟ كانت الإجابة المقبولة   
    في الحقيقة أغلب مطورين react و react native الآن إن لم يكن جميعهم يقومون باستخدام ال functional components بسبب سهولتها عن ال class based components، و لكن هذا لا يعني أنه تم الاستغناء بشكل كلي عن ال class based components. فما زال عليك تعلمها و معرفة كيفية عملها حتى و إن كنت لا تنوي استخدامها في مشاريعك، و هذا بسبب أن التطبيقات التي تم إنشائها في الإصدارات الأولى من react كلها مبنية باستخدام ال class based components و في كثير من الأوقات سيطلب منك أن تقوم بتحويل هذه التطبيقات من class based components إلى functional components لذلك يجب أن تعرف كيفية عملها.
  11. إجابة Yomna Raouf سؤال في ما هو الباك اند المناسب ل React Native ؟ كانت الإجابة المقبولة   
    يوجد العديد من التقنيات و اللغات لبرمجة ال backend لمشاريعك، مثل:
    php و إطار العمل laravel  python و إطار العمل Django node و إطار العمل express يمكنك استخدام أي لغة من هذه اللغات، فلغة جافاسكريبت قديمًا كانت تعمل في المتصفح فقط في بناء الواجهات الأمامية للمواقع. و لكن الآن أصبحت تستخدم في البرمجة الخلفية أيضا بفضل بيئة العمل node.js"و هي runtime environment مكنتنا من استخدام جافاسكريبت خارج المتصفح" و إطار العمل express"إطار عمل لبناء ال backend". و لكن يوجد فرق يجعل javascript تتفوق على php و python  في برمجة المواقع. و هي طريقة تنفيذ الأكواد حيث أن لغة جافاسكريبت non blocking أي أنها لا تنتظر أن يتم تنفيذ عملية ما حتى تنتقل إلى التي تليها مثل php مما يجعل أداؤها أفضل و أسرع من php.لذلك من وجهة نظري تعتبر node هي الأفضل خصوصًا في التطبيقات الكبيرة.
    و في النهاية اختيار التقنيات يتوقف على المشروع الذي تريد بناؤه.
  12. إجابة Yomna Raouf سؤال في ماذا عن إنشاء تطبيقات الجوال بـ cordova كانت الإجابة المقبولة   
    مرحبًا عبد الواحد.
    نعم هذا صحيح، في دورة تطوير تطبيقات الجوال باستخدام تقنيات الويب ستتعلم بناء تطبيقات الجوال بكلا الجانبين: جانب العميل و جانب المخدم باستخدام node.js و إطار العمل express.js.
    و ستقوم ببناء التطبيقات التالية في هذه الدورة:
    تطبيق مشاركة وصفات الطعام تطوير تطبيق لمطعم تطبيق جوال لطلاب المدارس تطوير تطبيق قائمة مهام بناء تطبيق لموقع ووردبريس  
     
  13. إجابة Yomna Raouf سؤال في تقييم لعمل جديد في الـ Front-end كانت الإجابة المقبولة   
    مرحبًا عبد الواحد.
    أحسنت العمل،عمل أكثر من ممتاز كالعادة، أحببت التصميم كثيرًا.
    ملاحظاتي هي كما يلي:
    في قسم الترويسة لاحظت أن جملة "عنوان تجريبي قابل للتعديل" تأخذ محاذاة في المنتصف و الفقرة التي تحتها محاذاتها جهة اليمين و في التصميم لا يُفضل أبدًا القيام بهذا فمن أهم الأمور في التصميم هي ال consistency. أي إذا كانت محاذاة العنوان في المنتصف نجعل محاذاة الفقرة في المنتصف أيضًا و هكذا.
     
    في قسم عن التسويق، ألوان الأيقونات التي تحتوي الأرقام تبدو عشاوائية بعض الشئ، أنا لا أرى أي داعً لاستخدام كل هذه الألوان يكفي فقط لون أو اثنان.
    أيضآ أعتقد أنها بحاجو لأن تكون أصغر بعض الشئ.
     
    في قسم مميزاتنا و من نحن، لدي تعليق بسيط على الأيقونات المستخدمة أيضًا فهي تختلف عن بعضها اختلاف كبير و ليست من نفس النوع و الألوان. أيضًا هذا أمر يجب أن تنتبه له.
    مثال لأيقونات يمكن استخدامها معًا في نفس الموقع.

    استمر في هذا العمل الرائع.
    أتمنى لك التوفيق.
  14. إجابة Yomna Raouf سؤال في دورات تعلييم ال back-end development كانت الإجابة المقبولة   
    مرحبًا أحمد.
    دورة تطوير واجهات المستخدم تركز فقط على المهارات اللازمة لكي تُصبح مطور واجهات أمامية.
    أمّا إذا كنت تريد أن تُصبح مطور واجهات خلفية أيضًا و تكتسب المهارات اللازمة لذلك، فيمكنك الالتحاق بإحدى الدورتين التاليتين:
    دورة تطوير تطبيقات الويب باستخدام لغة PHP: حيث ستتعلم فيها أساسيات لغة PHP و إطار العمل laravel"إطار عمل يستخدم في برمجة الbackend" و ستقوم ببناء العديد من المشاريع في الدورة"full-stack projects" مثل: تطوير شبكة اجتماعية لمشاركة الصور تشبه Instagram و إنشاء RESTful API باستخدام Laravel و تطوير موقع إعلانات مبوبة و تطوير نظام إدارة محتوى و متجر إلكتروني لبيع الكتب كما ستتعلم أيضًا تطوير قوالب WordPress. دورة تطوير تطبيقات الويب باستخدام لغة Ruby:  حيث ستتعلم فيها أساسيات لغة Ruby و إطار العمل Rails"إطار عمل يستخدم في برمجة الbackend". و ستقوم ببناء العديد من المشاريع فيه الدورة"full-stack projects" مثل: تطوير شبكة اجتماعية للتدوين المصغر تشبه تويتر و تطوير مجتمع يشبه حسوب I/O
    و يوجد العديد من الخيارات الأخرى للبرمجة الخلفية مثل لغة JavaScript و إطار العمل express.js و python مع إطار العمل django و غيرها.
    و لكن اختيار الدورة الأنسب لك يتوقف على عدة عوامل منها متطلبات سوق العمل و في مصر أو المجتمع العربي بصورة عامة PHP و إطار العمل Laravel مطلوبين بكثرة و لهم شهرة واسعة.
     
     
  15. إجابة Yomna Raouf سؤال في طباعة مثلث باسكال بحلقة For واحدة  كانت الإجابة المقبولة   
    مثلثث باسكال هو مثلث يستخدم لحساب معاملات ذات الحدين و هو يعمل بالطريقة التالية:

    لاحظ أيضًا أن الأرقام الموجودة في كل سطر هي عبارة عن الرقم 11 مرفوع لأس يساوي رقم السطر.
    و لطباعة مثلث باسكال باستخدام حلقة for واحدة يمكنك استخدام الكود التالي"Python":
    # Print Pascal's Triangle in Python # input n n = 5 # iterarte upto n for i in range(n): # adjust space print(' '*(n-i), end='') # compute power of 11 print(' '.join(map(str, str(11**i)))) الناتج.
    1 // 11^0 1 1 // 11^1 1 2 1 // 11^2 1 3 3 1 // 11^3 1 4 6 4 1 // 11^4  
  16. إجابة Yomna Raouf سؤال في مواقع مجانية لتحميل الايكونات والصور كانت الإجابة المقبولة   
    يوجد الكثير من المواقع التي يمكننا الحصول منها على صور للتصاميم، مثل:
    unsplash pexels istock shutterstock burst و غيرها الكثير.
    للحصول على أيقونات و رسومات توضيحية يمكنك استخدام:
    flaticon undraw craftwork و غيرها.
    للحصول على مصادر إلهام لتصميماتك يمكنك استخدام:
    dribbble behance Pinterest land-book و غيرها الكثير و لكن ما ذكرته لك هو الأهر.
    يمكنك الوصول لهذه المواقع بسهولة عن طريق البحث عنها على  google و البدأ باستخدامها في تصميماتك و أخذ الالهام منها
  17. إجابة Yomna Raouf سؤال في Creating Real Time Notification System كانت الإجابة المقبولة   
    للقيام بذلك يمكنك استخدام تقنية مثل firebase cloud messaging.
    و هي تعمل كالتالي:
    في بعض الحالات يكون من غير الممكن الاعتماد على أكواد ال client فقط، و من هذه الحالات:
    عندما نريد ربط third party APIs مثل Twilio لإرسال رسائل SMS أو SendGrid لإرسال e-mails. عندما يكون لديك متطلبات مصادقة متقدمة  عندما تكون الأكواد الخاصة بك  computationally intensive و بالتالي لا يمكنك تنفيذها في جانب العميل، أو أنها تحتاج إلى خادم موثوق للعمل به في هذه الحالات يمكنك استخدام Firebase بين الخادم و العميل. الخوادم الخاصة بك يمكنها أن تتصل مع firebase  و تتفاعل مع البيانات تمامًا مثل أي عميل آخر.بمعنى آخر الخادم الخاص بك سيتواصل مع العميل عن طريق التغيير في البيانات "manipulating data" في firebase.و ال Security and Firebase Rules language تتيح لك تعيين وصول كامل للبيانات الموجودة على الخادم الخاص بك.و الأكواد الخاصة بالخادم يمكنها أن تستمع لأي تغييرات تحدث على ال data عن طريق العميل و تجيب على هذه الغييرات بطريقة مناسبة.
     
     

     
    هنا على الرغم من أنك مازلت تستخدم خادم، إلّا أن firebase ستقوم بتولي أمر المهام الثقيلة عنك مثل ال scale و real-time updates.
    و حتى تقوم بهذه العملية يمكنك أن تبحث عن مقالات أو سلاسل تعليمية حول هذا الأمر و ستجد العديد منها. إذا واجهتك أي مشاكل يمكنك أن تخبرنا و سنقوم بمساعدتك.
    مثلًا يمكنك استدعاء ال API بواسطة PHP عن طريق الكود التالي، مع تغير key وtoken
    <?php define('API_ACCESS_KEY','Api key from Fcm add here'); $fcmUrl = 'https://fcm.googleapis.com/fcm/send'; $token='Token_Key'; $notification = [ 'title' =>'title', 'body' => 'body of message.', 'icon' =>'myIcon', 'sound' => 'mySound' ]; $extraNotificationData = ["message" => $notification,"moredata" =>'dd']; $fcmNotification = [ //'registration_ids' => $tokenList, //multple token array 'to' => $token, //single token 'notification' => $notification, 'data' => $extraNotificationData ]; $headers = [ 'Authorization: key=' . API_ACCESS_KEY, 'Content-Type: application/json' ]; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,$fcmUrl); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($fcmNotification)); $result = curl_exec($ch); curl_close($ch); echo $result;  
  18. إجابة Yomna Raouf سؤال في سؤال في تنقيب البيانات باستعمال البايثون كانت الإجابة المقبولة   
    ال JACCARD هي وسيلة إحصائية لتحديد نسبة ال overlapping/التطابق بين مجموعتين عن طريق المعادلة التالية.
    J(A,B)= ∣A∩B∣ / ∣A∪B∣ = ∣A∩B∣ / (∣A∣+∣B∣−∣A∩B∣) download.jfif
    أما عن هل هي خوارزمية أم مقياس.فالخوارزمية ما هي إلا خطوات منطقية لحل مشكلة ما. و أغلب الخوارزميات يتم بناءها بالاعتماد  على معادلات رياضية، أي وصف المعادلة بخطوات منطقية يمكن كتابتها على شكل أكواد يتمكن الحاسوب من تنفيذها.
    و إذا اطلعت على بعض الخوارزميات المتعلقة بتقنيات مثل تعلم الآلة ستجد أنها في الأساس معادلات رياضية.
  19. إجابة Yomna Raouf سؤال في كتابة المقالات في مستقل كانت الإجابة المقبولة   
    في هذا الجزء يتم إضافة المقالات التي قمت بنشرها في حسوب هنا. و حتى تتمكن من نشر مقالات على الأكاديمية من المفترض أن يتم توظيفك كمستقل من قِبَل الأكاديمية. يمكنك أن تبحث عن هذه المشاريع على مستقل و تتقدم لها.

  20. إجابة Yomna Raouf سؤال في مشكلة تنصيب دجانجو Django كانت الإجابة المقبولة   
    iل يمكنك تجربة الأمر التالي في cmd:
    pip install virtualenv بعد أن يكتمل التثبيت يمكنك استخدام الأمر التالي لإنشاء بيئة افتراضية:
    // bash إذا كنت تستخدم source venv/Scripts/activate // Command Line إذا كنت تستخدم venv\Scripts\activate.bat // PowerShell إذا كنت تستخدم venv\Scripts\Activate.ps1 بعدها يمكنك إكمال العمل و إنشاء تطبيق django داخل البيئة الافتراضية
  21. إجابة Yomna Raouf سؤال في سؤال حول اطارات العمل والمكتاب كانت الإجابة المقبولة   
    كلٌ من هذه المكتبات يعتبر مكتبة ممتازة و يمكنك تعلُم أي مكتبة منهم و لكن أنصح ب React فهي الأكثر شُهرة و طلبًا في سوق العمل هذه الأيام "على كلٍ إذا تعلمت أحد هذه المكتبات و تقدمت إلى وظيفة تطلب مكتبة أخرى سيقومون بتعليمك إيّاها إذا وجدوا أن أعمالك و مهاراتك ممتازة و مناسبة للوظيفة "
    أما فيما يخص react native و flutter فلكلٍ منها مزاياه فمثلًا المزايا التي تقدمها react native هي أنك لن تحتاج لتعلم لُغة جديدة حتى تتمكن من تعلمها طبعًا هذا إذا كنت مطور ويب و تجيد JavaScript"ستحتاج لتعلم أساسيات react قبل أن تبدأ ب "react native"  أما حتى تتعلم flutter ستحتاج لتعلم لغة Dart قبلها مما يعني ستحتاج وقتًا أطول بعض الشئ حتى تبدأ بإنشاء تطبيقات و تعلم flutter أيضًا تطبيقات flutter أداءها أفضل من أداء تطبيقات react native قليلًا "الفرق ليس كبير بينهم" و لكن إذا قمت بعمل بعض من ال code optimization لأكواد react native سيصبح أداؤها مثل أداء التطبيقات التي تم بناءها ب flutter. أما من جهة المجتمع فالمجتمع و المصادر الخاصة ب react native أكثر بعض الشئ من  flutter و هذا لأن react native أقدم من flutter و لكن المجتمع حول flutter في تزايد مستمر الآن. 
    مما يعني أن اختيار المكتبة التي تريدها يعتمد على تفضيلاتك الشخصية أي إذا كنت مطور web و تعرف javascript يمكنك أن تتعلم react native حتى تتمكن من بناء تطبيقات هواتف و ويب بنفس اللغة دون أن تضطر لتعلم لغة جديدة.
    أيضًا كلًا من المكتبتين يمكنهم القيام بنفس الوظائف، لا يوجد شئ يمكن تنفيذه عن طريق مكتبة و الأخرى لا. 
    أيضًا يمكنك أن تجد الكثير من المصادر و المقالات على الانترنت توضح الفرق بين المكتبيتين و التي من شأنها أن تساعدك في اتخاذ هذا القرار.
     
  22. إجابة Yomna Raouf سؤال في كيف أتعلم البرمجه من الصفر كانت الإجابة المقبولة   
    إذا كنت تريد أن تصبح مطور مواقع يمكنك أن تبدأ بتعلم أساسيات البرمجة و مفاهيمها الأساسية التفكير المنطقي و الخوارزميات و بعدها يمكنك أن تنتقل لتعلم لغات مثل html و css و javaScript و الذين يتم استخدامهم لبناء واجهات المستخدم "واجهة الصفحات التي يتعامل معها المستخدم" و بعدها تتعلم مكتبة لبناء واجهات المستخدم مثل React.js مثلًا بعدها يمكنك الانتقال إلى تعلم كيفية بناء ال backend "" باستخدام node.js و express "يستخدمان لغة جافاسكريبت" أو laravel "تستخدم لغة php" "" و قواعد البيانات مثل mongodb و postgresql.
    و هذه مقالة شاملة يتحدث الكتاب عن البرمجة و مفاهيمها و لماذا تتعلم البرمجة و كيف تبدأ في المجال أيضًا. سيقدم هذا المقال إجابات وافية لجميع الأسئلة التي قد تصل إلى ذهنك بإذن الله..
    بالتوفيق.
  23. إجابة Yomna Raouf سؤال في الإضافة المناسبة للتسويق بالعمولة - wordpress كانت الإجابة المقبولة   
    يوجد العديد من الإضافات الخاصة ب Affiliate Program WordPress Plugins التي يمكنك استخدامها.و هذه صورة توضح أفضل عشر إضافات لهذا الغرض بناءً على ما ذكر في المدونة الخاصة ب WordPress نفسها:

    و مما ذكرته أعتقد أن الإضافة الأولى Affiliate Manager هي الأنسب لاحتياجاتك، فهي تتيح لك تتبع و إدارة و الدفع للمسوقين مباشرةً من خلال موقعك. أيضًا يمكنك أن تقرأ عن الفروق بين هذه الإضافات و تتخذ القرار الأنسب لك.و بعدها يمكنك أن تطلع على التوثيق الرسمي الخاص بالإضافة التي قمت باختيارها لتعرف كيفية تثبيتها و استخدامها فلكل إضافة طريقة خاصة بها.
     
  24. إجابة Yomna Raouf سؤال في ماهو شرح الخطاف React navigation -- useFocusEffect كانت الإجابة المقبولة   
    في الجزء الأول من الأكواد الخاص ب useEffect من المعروف أن هذا ال hook يتم تنفيذه مرة واحدة فقط عند تحميل المكون و في المثال الذي أرفقته عند تحميل هذا المكون يقوم useEffect بتغيير قيمة خطاف الحالة fetching إلى true ثم يقوم بجلب البيانات الخاصة بالمنتجات عن تطريق الدالة fetchProducts و نقوم بالتقاط أي أخطاء قد تحدث في عملية جلب بيانات المنتجات هذه و نجعل قيمة خطاف الحالة error تأخذ قيمة رسالة الخطأ و هذا يتم باستخدام التابع catch في النهاية بعد أن يتم جلب البيانات الخاصة بالمنتجات بطريقة صحيحة نقوم بتغيير قيمة خطاف الحالة fetching إلى false و هذا الجزء الخاص بالتابع finally.
    أما في الجزء الثاني من الأكواد الخاص ب useFocusEffect، فهو يعتبر HOOK خاص ب React Navigation. يستخدم هذا الخطاف في التطبيقات عندما نريد إضافة side-Effect، و هذه التأثيرات الجانبية قد تتضمن أشياء مثل إضافة مستمع أحداث، أو جلب بيانات، ....إلخ.
    مثلًا في حالتنا التأثير الجانبي هو إعادة التحميل. Refresh.
    و الخطاف useFocusEffect مماثل للخطاف useEffect. الفرق الوحيد بينهما هو أن useFocusEffect يعمل إذا كنا نركز على الصفحة حاليًا.و التأثير سيعمل عندما تتغير الاعتماديات التي يتم تمريرها React.useCallback"خطاف"، مثلًا ستعمل عند عملية ال render الابتدائية (if the screen is focused) و أيضًا إذا تغيرت الاعتماديات.
    import { useFocusEffect } from '@react-navigation/native'; function Profile({ userId }) { const [user, setUser] = React.useState(null); useFocusEffect( React.useCallback(() => { const unsubscribe = API.subscribe(userId, user => setUser(user)); return () => unsubscribe(); }, [userId]) ); return <ProfileContent user={user} />; } إذا لم تقم بتغليف التأثير الخاص بك داخل الخطاف React.useCallback، سيم تنفيذ التأثير في كل عملية render عندما تكون الشاشة تحت التركيز.
  25. إجابة Yomna Raouf سؤال في MYSQL DATABASE ERROR WITH FOREIGN KEY كانت الإجابة المقبولة   
    هذا الخطأ يظهر أيضا في وجود foreign key بنفس الاسم في جدول آخر.لذلك عندما يظهر لك هذا الخطأ تأكد من تماشي/تطابق أنواع البيانات أيضا إذا كان ال primary key UNSIGNED يجب أن يكون ال foreign key  unsined كذلك.ط و من أن أسماء ال foreign keys فريدة unique.
    إذا لم تتمكن من حل المشكلة أرجو تزويدنا بمزيد من المعلومات عن الأكواد و قاعدة البيانات حتى نتمكن من مساعدتك.
    شكرا لك.
×
×
  • أضف...