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

عبدالله عبدالرحمن11

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

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

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

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

  1. في البداية سنقوم بطباعة الاستجابة للتأكد أنك حصلت على استجابة بنجاح ثانياً كان لديك خطأ قمت بإستدعاء data مرتين هكذا response.data.data.amount ويجب عليك حذف واحدة كما في الكود الموضح بالأسفل getBTCPrice() { const url = 'https://api.coinbase.com/v2/prices/BTC-USD/spot'; axios.get(url) .then(function (response) { console.log(response) // للتأكد أنك حصلت على استجابة return response.data.amount; // كان هناك خطأ سابقا }) } render() { return( <div> BTC: {this.getBTCPrice()} USD </div> ); }
  2. يجب عليك عمل bind مثلما قال الأخ عبدالله لكن إذا كان الأمر ليس واضحاً لك وأيضاً تريد إختصار الكود وجعله أسهل يمكنك استخدام دالة السهم arrow function لكي تتجنب استخدام bind يمكنك تغيير الكود السابق الى هذا الشكل import React from 'react' class Content extends React.Component { constructor(props) { super(props) this.state = {content: ''} } changeContent = (e)=> { // دالة السهم this.setState({content: e.target.value}) //Arrow Function } render() { return ( <div> Title: <input type="text" value={this.content} onChange={this.changeContent} /> </div> ) } } export default Content
  3. اولاً php وإطار عمله Laravel هو لتطوير الخلفية ( السيرفر ) فقط ، فإذا كان أي تطبيق جوال يحتاج الى سيرفر فيمكن برمجة السيرفر بphp أو غيرها. فبرمجة الخلفية (السيرفر) منفصلة تماماً عن برمجة التطبيق أما لتطوير تطبيقات الجوال بإستخدام تقنيات الويب HTML, CSS و JavaScript فيمكنك بالتأكيد ولديك العديد من الخيارات. انت لم تذكر JavaScript وهي تعتبر أهم لغة سواء لتطوير المواقع فقط أو حتى أيضا لتطوير تطبيقات الجوال. من الخيارات المتاحة للتطوير بإستخدام تقنيات الويب Ionic Cordova ولديك خيار أخر لجعل الموقع الإلكتروني كتطبيق قابل للتثبيت ولكن ليس من المتجر بإستخدام PWA الخيارات السابقة هي لإستخدام تقنيات الويب كما هي ، وهي لاتعتبر أفضل الخيارات من ناحية الأداء والوصول الكامل للAPI الخاص بالنظام فالخيارات الأفضل هي ب JavaScript عبر استخدام React Native ويعتبر الأفضل والأكثر شهرة NativeScript فبإستخدام React Native يكون لديك الوصول الكامل للAPI ويكون الأداء مقارب لأداء تطبيقات الNative
  4. أشهر إطاري عمل Python للتطوير الويب هما Flask Django ولكن من أجل التطوير للمشاريع الكبيرة فيجب عليك استخدام Django فهناك العديد من الشركات الكبيرة تقوم بإستخدمه مثل Pinterest Instagram Udemy Coursera وغيرها من المواقع وهذا دليل على قوة إطار العمل Django أما أطر عمل Python لتطبيقات سطح المكتب فهناك العديد أشهرها: Kivy PyQT Tkinter WxPython PyGU يمكنك إستخدام Kivy بدلا من PyQT هذه هي أطر عمل تطبيقات سطح المكتب إذا أردت التطوير بإستخدام Python ولكن لديك العديد من الحلول الأخرى لتطبيقات سطح المكتب تختلف بحسب إحتياجاتك فيمكنك بكل سهولة استخدم تقنيات الويب من HTML, CSS و JavaScript وعمل برنامج لسطح المكتب لجميع المنصات بإستخدام Electron ومن أشهر البرامج التي صنعت بإستخدام Electron هو برنامج VS Code وأيضا لديك العديد من الحلول الأخرى مثل استخدام #C أو Java
  5. عندما تقوم بكتابة الكود هكذا ف error يقوم بعمل return الخطأ هذا Error: Request failed with status code 404 axios.get('https://api.example.com') .then((response) => {}) .catch((error) => { setErrorCode(error) }) ولكن error هو عبارة عن object وتستطيع الحصول على رقم الخطأ عبر إستخدام هذا هذا الكود axios.get('https://api.example.com') .then((response) => {}) .catch((error) => { setErrorCode(error.response.status) })
  6. إذا كنت تريداستخدام axios فهي عبارة عن مكتبة ويجب عليك إضافتها أما fetch فلا تحتاج لإضافة أي شيء فهو موجود في المتصفح نفسه أهم مايميز axios عن fetch هو أن axios يختصر الكود الذي كنت ستكتبه بإستخدام fetch وهنا ميزة أخرى وهي عدم الوقوع في الأخطاء في الكود الذي كنت ستكتبه بإستخدام fetch وايضا axios يقوم تلقائيا بتحويل بيانات الطلب والاستجابة بينما إذا استخدامت fetch كنت ستعمل ذلك يدوياً لا يوجد أي خطأ في استعمال fetch أو axios فإذا كنت تفضل أن يكون الكود مختصر و والتحويل يكون تلقائي فيمكنك استخدام axios أما إذا كنت مهتم بجعل حجم الصفحة صغيرة بقدر الإمكان وعدم إضافة مكتبات يمكن الإستغناء عنها لكي لاتزيد من حجم الصفحة فيمكنك استخدام fetch يمكنك أيضاً بناء دالة بنفسك تمتلك نفس ميزات axios وهذه الدالة تقوم بإستخدام fetch ولن تحتاج لإضافة أي مكتبة
  7. من ناحية قواعد بيانات SQL فأشهر قواعد البيانات وأكثر طلب عليها: PostqreSQL MySQL واما من ناحية قواعد بيانات NoSQL فهناك العديد من قواعد البيانات لهذا النوع ولكن تختلف بحسب طبيعة وأهداف العمل ومن أشهرها وأكثر طلب عليها: MongoDB Redis وغيرها التي تختلف بحسب أهداف العمل أما من ناحية التوافق فأغلب قواعد البيانات المشهورة متوافقة مع Flutter
  8. لغة php محصورة للبرمجة الخلفية للمواقع وليست محصورة بال wordpress فهناك عدة أطر عمل يمكنك إستخدامها مثل Laravel أو Symfony وغيرها وهناك لغات أخرى منافسة للphp وأفضل منها من عدة نواحي مثل السرعة والأمن وعليها طلب أكثر واللغتين الأكثر شهرة هما NodeJS وهو عبارة عن JavaScript لكن خارج المتصفح وأدائها وسرعتها ممتازة فإذا كان لديك خبرة سابقة في JavaScript فلا تحتاج لتعلم الكثير من الأشياء الجديدة مقارنة بتعلم أشياء جديدة ومن أهم استخدامتها في التواصل في الوقت الحقيقي باستخدام WebSocket أو WebRTC لأن Nodejs سريعة جدا واما إذا أردت الدخول في مجال الذكاء الاصطناعي فينصح باستخدام Python لبرمجة الخلفية
  9. قديماً كانت البرمجة باستخدام Objective-c لكن شركة أبل أنشئت لغة جديدة أفضل وأسهل من Objective-c وهذه اللغة هي الأكثر شهرة وأكثر اعتماداً وهي لغة Swift ويمكنك التطوير باستخدام Swift ل iOS و Mac و Apple TV و Apple Watch لكن البيئة المتاحة للتطوير باستخدام Swift هي عبر استخدام نظام MacOS
  10. لأن الناتج يساوي 6- يعني بتطبع array[-6] وهذا لا يوجد
  11. مشكلتك موجودة في Github ومازالت مفتوحة وحالياً الحل الوحيد هو التحديث يدوياً
  12. Garbage Collection أو جامع النفايات هي عبارة عن عملية جمع الموارد غير المستخدمة في ذاكرة الحاسب الرام. هي شكل من أشكال تنظيم ذاكرة الحاسب بشكل تلقائي حيث أن عملية جمع النفايات تهدف إلى البحث عن الموارد غير المستخدمة في الذاكرة - مثل متغيرات أو مصفوفات - ومن ثم إزالتها من أجل الحصول علي مساحة فارغة من الذاكرة لاستخدامها في أعمال أخرى. في اللغات القريبة من الحاسب مثل C و ++C لا يوجد لديها جامع نفايات والمبرمج يقوم بعمل ذلك يدوياً بينما اللغات العالية المستوى مثل JavaScript لديها جامع نفايات والمبرمج لايقلق حول إدارة الذاكرة وجمع النفايات
  13. السيرفر الخاص بك يرسل لك object { id: 1, name: "Adam" } ولا يمكنك في React وضع Object في دالة render لهذا يجب عليك في الكود وضع الاسم الذي في object كما في الأسفل ،بدلاً من وضع object نفسه class Data extends React.Component { state = {}; async getData() { const res = await axios('/api'); this.setState(res.data); } componentDidMount() { this.getData(); } render() { return <div>{this.state.name}</div>; // يجب اختيار الاسم الذي داخل الحالة } }
  14. useEffect(() => { alert('سيتم الإستدعاء بعد كل ظهور '); }); useEffect(() => { alert('سيتم الإستدعاء بعد الظهور الأول فقط'); }, []); useEffect(() => { alert('سيتم الإستدعاء بعد أن تتغير قيمة أحد المتغيرين اللذين في المصفوفة'); }, [a, b]); في الإستدعاء الثالث يمكنك إضافة متغير واحد على الأقل أو أكثر في المصفوفة هناك أيضا ما يسمى بدالة التنظيف وتكون بعد return في دالة useEffect وفي دالة التنظيف تقوم بإزالة وتنظيف أشياء مثل eventListener أو setTimeOut بعد التخلص من المكون ودالة التنظيف هي مثل دالة ComponentWillUnmount useEffect(() => { document.addEventListener('keydown', handleKeydown); // إضافة مستمع عندالضغط على زر return () => document.removeEventListener('keydown', handleKeydown); // دالة التنظيف وتقوم بإزالة المستمع السابق });
  15. يمكنك الذهاب إلى هذا الموقع وهو الموقع الرسمي لبايثون والضغط على كلمة download Python وسيتم تنزيل النسخة المناسبة للنظام الذي فتحت الموقع به أو يمكنك إختيار نوع النظام بالضغط على الكتابة الموجودة أسفل زر download python ومكتوب فيها Windows, Linux/UNIX, Mac OS X, Other واختر النظام الذي تريده
  16. إذا كنت تستخدم JSX وهو عبارة html و javascript والذي يكون بعد كلمة return في الدالة render فيجب عليك دائما إستدعاء React لأن في الخلفية React يقوم بمعالجة ال JSX ويستدعي دالة خاصة لبناء عنصر html في ال DOM object والدالة المستخدمة لمعالجة الJSX وإنشاء عنصر جديد في ال DOM object هي React.createElement فالمشكلة إذا لم تستدعي React لن تستطيع إستدعاء هذه الدالة في الخلفية
  17. أي نظام لينكس تقصد هناك العديد من توزيعات لينكس
  18. ليست المشكلة في أحد أدوات الطباعة المستخدمة ولكن المشكلة في الكود البرمجي الذي كتبته فهناك خطأ ما ، مما أدى إلى نفاذ الذاكرة RAM يجب عليك مراجعة الكود الذي كتبته على خطوة خطوة لكي تعرف اين الخطأ الذي أدى الى نفاذ الذاكرة
  19. نعم هناك بعض المنصات التي تتيح لك عدد محدود من الرسائل مجانا لكن إذا أردت هذه الخدمة من أجل التحقق من رقم الهاتف فيمكنك استخدام firebase مجانا لعدد كبير جدا للتحقق من أرقام الهواتف في أي دولة حول العالم
  20. تستطيع تثبيت حزمة json-server باستخدام npm لعمل server وهمي وتستطيع من خلاله طلب بيانات واضافة بيانات لكي تجرب صفحة تسجيل الدخول بدون استخدام server حقيقي أو قاعدة بيانات وايضا تستطيع عمل طلب مثلا باستخدام fetch الى هذا الخادم المزيف مثلما أنك تعمل طلب لخادم حقيقي بحيث يكمنك التركيز على تطوير الواجهة
  21. إذا كنت ثبت npm مع node js فغالبا سيكون مكانها في هذا المجلد C:\Program Files\nodejs كل ما عليك هو إضافة هذا العنوان في path في environment variable للدخول الى هنا اضغط على جهاز الكمبيوتر بالزر الأيمن ثم اضغط على خصائص ثم اضغط على إعدادات النظام المتقدمة ثم اضغط على Environment Variables متغيرات البيئة ثم اضغط على path المسار ثم اضغط على edit تعديل ثم اضغط على new جديد وقم بنسخ هذا العنوان C:\Program Files\nodejs
  22. لقد قمت بعمل جيد لوصولك الى هذه المرحلة المراحل الآتية مثل ان تتعلم استخدام بعض المكتبات الشهيرة ومن ثم تعلم أحد اطر عمل جافا سكربت الشهيرة مثل React أو Vue لكن يجب ان تنتبه لمعلومة مهمة وهي التطبيق العملي والممارسة حتى تكون فاهم للأشياء كيف تعمل و لاتنتقل الى مرحلة متقدمة حتى تقوم بإنجاز بعض المشاريع في الأشياء الذي تعلمتها حاليا فأفضل طريقة للتعلم وفهم الأشياء هي عبر الممارسة والتطبيق العملي
  23. يمكنك التطوير باستخدام React لتصميم الواجهة Frontend فقط ويمكن الحصول على المعلومات أو طلب بيانات من أي خادم Server عن طريق استخدام API بحيث تعمل طلب الى خادم معين للحصول على بيانات معينة وهذا الخادم يستجيب بالبيانات المطلوبة اما من ناحية التطوير جنب الى جنب مع الخادم فانت تقوم بتطوير كل منهما بشكل منفصل ثم يمكنك وضعهما في مكان واحد واستضافتهما في مكان واحد لكن طريقة جمعهما في مكان واحد تختلف بإختلاف لغة الBackend
  24. هناك ثلاث طرق لاستخدام الCSS مع صفحات HTML 1- طريقة inline يعني اختر أي عنصر html ثم اضف style وضع داخلها نص ال CSS الذي تريده <h1 style="color:blue;">عنوان</h1> 2- عن طريق كتابة العنصر style ووضع نص ال CSS الذي تريده داخلها <style> h1 {color:blue;} </style> 3- الطريقة الأخيرة هي عبر وضع كود CSS في ملف نصي منفصل ينتهي الملف ب css بدلاً من txt ويتم استدعائه في ملف html هكذا الملف الخارجي بإسم styles.css وهذا مثال لكود css داخله h1 {color:blue;} وهذا ملف html وفيه كيفية إستدعاء الملف الخارجي <head> <link rel="stylesheet" href="styles.css"> </head> ويكون الإستدعاء داخل عنصر ال head
  25. لغة الBackend يتم اختيارها حسب الحاجة مثلا إذا أردت عمل محادثات فيفضل استخدام node js اما إذا أردت في مجال الذكاء الاصطناعي فيفضل استخدام python للBackend فانت تختار لغة Backend حسب عمل الخادم Server Dart ليست مشهوره للاستخدام في الBackend لهذا ستجد الكثير من المشاكل مثل نقص الدعم والمكتبات Firebase هو الذي يتحكم بالسيرفر ويعطيك أوامر مختلفة محدودة وليس لديك الوصول الكامل للسيرفر والحرية التامة في استخدام السيرفر لكن هدف Firebase الرئيسي هو تسهيل بناء التطبيقات وعدم التعب كثيراً في أمر الBackend Node js لغة مشهورة جداً في الBackend وتستخدم بكثرة ولديك كامل الصلاحية والحرية في بناء الBack end خاصتك في الأخير تختار لغة Backend حسب الحاجة وليس حسب التطبيق الخارجي لأن أي تطبيق خارجي يقوم باستقبال وإرسال بيانات لأي سيرفر مهما كانت اللغة
×
×
  • أضف...