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

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

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

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

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

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

    11

أجوبة بواسطة عبدالباسط ابراهيم

  1. يمكنك استخدام المكتبة FastExcel حيث تعتبر  بديلاً أسرع (وصديقًا للذاكرة) لـ Laravel Excel ، مع ميزات أقل. استخدمه فقط للمهام البسيطة.

    لذلك إذا كنت تحتاج التعامل بشكل بسيط مع ملفات ال excel فالأفضل استخدام المكتبة FastExcel حيث تعتبر أخف بكثير من Laravel Excel ومع ذلك ، تذكر أن Laravel Excel يحتوي على العديد من المميزات.

    لتحميل المكتبة:

    composer require rap2hpoutre/fast-excel

    يمكنك الإطلاع على مستودع github لهذه المكتبة للمزيد من المعلومات وهي مكتوبة بشكل واضح وسهل من هنا

  2. عند المقارنة ين اللغات في مجال معين نحتاج للتعرف على الخيارات الموجودة في كل لغة برمجة للتطوير في هذا المجال 

    لذلك في مجال تطبيقات الموبايل وتطبيقات الحاسوب يمكنك استخدام التقنيات التالية بواسطة JavaScript 

    • تعد كوردوفا (وأيونيك) منصات ناضجة تعمل بشكل جيد.
    • ويمكن أن يتيح لك Capacitor مشاركة الكود بين تطبيقات الأجهزة المحمولة وتطبيقات سطح المكتب.
    • تحصل React Native على عناصر التحكم الأصلية الخاصة بك على Android و iOS.
    • يمنحك Proton القدرة على استخدام عناصر التحكم في نمط React Native لتطبيق سطح المكتب.

    لدى Python

    • إطار Kivy ، وهو إطار لا يستخدم عناصر تحكم أصلية ، ولا يستخدم HTML5 + CSS أيضًا ،  النظام البيئي صغير جدًا مقارنة بأي من خيارات JavaScript المذكورة أعلاه أيضًا.

    ويمكنك استخدام TypeScript مع أي من خيارات JavaScript أعلاه ، والحصول على بيئة تطوير كاملة وحديثة فوق نظام بيئي مدعوم جيدًا.

    لذلك عند المقارنة بين JavaScript و Python في مجال تطبيقات الموبايل أو الحاسوب أيضاً فتعتبر JavaScript أفضل من Python بفارق كبير 

  3. من السهل جدًا التعامل مع قاعدة البيانات الخاصة بك من وحدة تحكم Firebase. يمكنك حتى تصدير / استيراد قاعدة البيانات في الوقت الفعلي كملف JSON.يعد تأمين قاعدة بيانات Firebase أمرًا سهلاً عند اقترانه بمصادقة Firebase. يعد Firebase ، عند استخدامه مع طبقات قليلة من العلامات المتداخلة ، أسرع من معظم خدمات قواعد البيانات الموجودة هناك. يمكنك أيضًا استخدام وظائف Firebase لإجراء عمليات من جانب الخادم على بياناتك.

    على الجانب السلبي ، تسمح خطتهم المجانية بحد أقصى 100 اتصال متزامن. إذا كان تطبيقك سيتجاوز هذا القيد ، فيمكنك دائمًا الدفع وشراء خطة Blaze الخاصة بهم.

    يمكنك تعلم كيفية العمل بال firebase من خلال المصادر في الأجابات على هذا السؤال

    بما أنكي تستخدمين Kodular فربما لا يكون لديكي أي خبرة برمجبة لذلك أفضل حل بالنسبة لك هو تعلم كيفية التعامل مع firebase من خلال Kodular من خلال التوثيقات الرسمية ل Kodular عن طريق هذا الرابط  حيث يوضح كيفية التعامل مع ال firebase عن طريق مكونات خاصة ب Kodular بدون معرفة بالبرمجة

     

    • أعجبني 1
  4. الكود المرفق في الملف يحتوي على خطئين إملائين هو عدم إضافة وسم الإغلاق بشكل صحيح حيث كتبت

    <h1>javascript in browser<h1>
            <script>
                console.log('hello');
            <script>

    بدلاً من 

    <h1>javascript in browser</h1>
            <script>
                console.log('hello');
            </script>

    لذلك لم يعمل بينما في الصورة المسبقه لا يوجد خطأ في الكود لذلك قم بتحديث الموقع وسيعمل بشكل سليم 

  5. نقوم باستخدام ال spread operator في ال useState حتى نقوم بتحديث القيم الموجودة في ال state وكما تم التوضيح في التعليق السابق بشكل جيد سأحاول توضيح أهميته من خلال المثال التالي

    إذا كان لديك مصفوفة من الكائنات أو الكائنات ذات الحقول والقيم ، وتريد إضافة المزيد من الحقول أو العناصر بحيث يمكنك القيام بذلك باستخدام التعليمات التالية. لنأخذ مثالاً ، لنفترض أن لدينا الحالة التالية بالأشياء

    const [values, setValues] = useState({
      full_name: "",
      email: "",
      password: "",
      confirmPassword: "",
      type: ""
    });

    ونريد فقط تحديث قيمة البريد الإلكتروني ، يمكننا القيام بذلك باستخدام spread operator:

    setValues({ ...values, email: 'new Value' })

    لنفترض أنك تريد إضافة حقل أو كائن جديد في المصفوفة أو الحالة ، لتحقيق ذلك سنتبع الطريقة التالية

    setValues({ ...values, nickName: 'new Value' })

     

    • شكرًا 1
  6. الأفضل لك هو الإكمال في هذه الدورة حيث أن في المسارات القادمة يوجد الكثير من التطبيقات العملية على ال html وال css وال javacsript لذلك لست بحاجة للتطبيق على هذه التقنيات بمفردك

    وربما تجد نفسك أثناء التطبيق وراء المدرب بعض المعلومات التي لا تتذكرها وليس هناك مشكلة في ذلك فيمكنك البحث عن هذه المعلومات من خلال التوثيقات الموجودة في موسوعة حسوب 

    هذه الطريقة أفضل لك من المراجعة على المسارات ال html وال css مرة أخرى توفيراً للوقت وحتى لا تشعر بالملل 

    والأفضل لك في الدروس القادمة هو تدوين بعض المعلومات المهمة في كل درس (معلومات بسيطة جداً) حتى تتذكر هذه المعلومات عند الإنقطاع لفترة كبيرة عن البرمجة بدلاً من مراجعة الدروس مرة أخرى

  7. استخدام ال functional programming أو استخدام ال  object orianted programming يعتمد على المشروع الذي تعمل به ويمكنك استخدامهما معاً في نفس المشروع أو البرنامج بدون أي مشكلة 

    وبما أنك قد تعلمت المفاهيم الأساسية الخاصة بالبرمجة كائنية التوجه يحتاج فقط إلى مشروع تتمكن فيه من تطبيق هذه المفاهيم وليس شرطاً أن يكون موقع كبير إنما أي موقع بسيط تستطيع استخدام ال OOP مثل 

    • بناء to-do  list ويمكنك تطبيق ال OOP في هذا التطبيق بكل سهولة 
    • حاول بناء برنامج يقوم بحساب ال budget الخاص بالمستخدم 
    • يمكنك إعادة بناء أو تحويل الكود الموجود في التطبيقات السابقة الخاصة بك إلى ال OOP

    ويعتبر ال javascript من أكثر اللغات التي تتبنى اسلوب ال  functional programming وليست لغة جيدة في استخدام ال object orianted programming 

    • أعجبني 1
  8. توفر لك الدورة أساسيات علوم الحاسوب ومن أبسط المفاهيم البرمجية إلى المفاهيم المتقدمة وأفضل الأساليب المتبعة في البرمجة.  وتوصلك بك إلى مرحلة متقدمة من التعامل مع مختلف التقنيات. 

    ولكن حتى تفهم أهمية هذه الدورة يجب عليك أولاً معرفة ما هي مجالات البرمجة و تحديد المسار الذي تود العمل به وهذه المقالة توضح لك مجالات البرمجة

    لذلك هذه الدورة هي مدخل لك في عالم البرمجة وعلوم الحاسوب عامة بعدها يمكنك إختيار المجال الذي تفضله والتعمق فيه 

    لذلك إختصاراً تحتاج إلى فهم أساسيات علوم الكمبيوتر على الأقل قبل محاولة تسمية نفسك بالمبرمج. هناك فرق بين التكويد والبرمجة. عدم معرفة العلم وراء البرمجة هو التكويد . العالم به عدد كبير جدًا من ال coders .

    البرمجة علم يحتاج  لتعلم أساسيات علوم الكمبيوتر أولاً. يمكنك أن تصبح مبرمجًا بدونها ، لكنك لن تكون محترفاً ، أو حتى جيدًا جدًا في هذا الشأن ، بدون أي خلفية في علوم الكمبيوتر

  9. سأحاول توضيح الفكرة بمثال آخر

    Sequence :هو الترتيب الذي تدخل فيه الأوامر. يمكن أن يكون الترتيب مهمًا حقًا. فكر في التعليمات اللازمة لعمل كوب من الشاي:

    1. املأ الغلاية بالماء
    2. شغل الغلاية
    3. ضع كيس الشاي في الكوب
    4. صب الماء الساخن في الكوب
    5. قلب
    6. قم بإزالة كيس الشاي
    7. أضف الحليب

    إذا فعلت الرقم 3 قبل 2 فلن يكون ذلك مهمًا. ومع ذلك ، إذا تناولت 2 بعد 1 فلن يكون لديك ما يكفي من الماء لكوب من الشاي.

    Selection يمكن وصف التحديد بأنه إجراء اختيار بناءً على معايير. فكر في الأمر كما لو كان هذا بعد ذلك.الاختيار جزء مهم من البرمجة. يساعدنا في اختيار مسارات مختلفة والاستجابة للمواقف.

    • إذا كنت تشرب الحليب مع الشاي ، أضف الحليب إلى الشاي
    • إذا كانت الغلاية لا تحتوي على ماء ، فقم بملء الغلاية بالماء

    Iteration: التكرار هو تكرار المواقف. هناك العديد من الأنواع المختلفة للتكرار.

    • يمكنك تكرار المهمة عددًا محددًا من المرات: قلب الشاي 3 مرات
    • يمكنك تكرار المهمة حتى يحدث شيء ما: قلّب الشاي حتى يمتزج الحليب مع الشاي
  10. يوجد العديد من بوابات الدفع التي تناسب متطلباتك مثل 

    • بوابة الدفع الالكتروني سترايب (Stripe) لا تقوم بوابة Stripe بفرض أي رسوم شهرية

    • بوابة الدفع الالكتروني  Vapulus هي بوابة دفع مصرية Vapulus وهي موثوقة على المستوى المحلي والعالمي وتُعد الخيار الأمثل للتجار بالوطن العربي كما أنه لا توجد رسوم للإشتراك أو رسوم شهرية

    توجد بوابات دفع عديدة اخرى مثل باي بال، تو تشيك اوت و هايبرباي ولكن البوابات السابقة تتناسب مع متطلباتك

  11. ربما يكون هذا الخطأ بسبب أنك تحتاج لتحديث إصدار ال Gradle

    لذلك قم بتثبيت الإصدار الأحدث من هنا وحسب الطريقة المتاحة أمامك يمكنك التثبيت 

    أو يمكنك تنفيذ ذلك يدوياً من خلال

    • قم بتنزيل أحدث إصدار لـ Gradle
    • قم بفك ضغط مجلد Gradle الذي قمت بتحميله إلى C:\Gradle
    • قم بعديل ال environment variable  انقر بزر الماوس الأيمن على أيقونة  الكمبيوتر ثم انقر فوق خصائص -> إعدادات النظام المتقدمة -> المتغيرات البيئية.ضمن متغيرات النظام ، حدد المسار ، ثم انقر فوق تحرير. قم بإضافة إدخال لـ C:\Gradle\gradle-8.0\bin . انقر فوق "موافق" للحفظ.
    • قم بعد ذلك بالتأكد من التحديث عن طريق تنفيذ الأمر التالي gradle -v

     

    • أعجبني 1
  12. بتاريخ 3 دقائق مضت قال Mahmoud Jaq:

    اهلا, نعم لغة Javascript  عملت مثل ما شرحت, ولكن يطلع نفس النتيجة 

     

    لقطة الشاشة 2023-02-14 195622.png

    لم تقم بتعديل الكود حيث أنك لم تقم بحذف علامتي التنصيص 

    حيث أن في السطر التالي

    if("sellerrange == 4.5"){
    
    }else{
    
    }

    نحذف علامة التنصيص ليصبح الكود بعد التعديل كالتالي

    if(sellerrange == 4.5){ //لاحظ حذف علامة التنصيص من هنا
    
    }else{
    
    }

     

  13. قم بحذف علامة التنصيص بين ال sellerrange لتصبح في الأخير كالتالي

    (sellerrange= 4.5)

    حيث أن عند وضع المغير أو الحالة بين علامتي تنصيص فيصبح القيمة الموجودة بين الأقواس هي نص والنصوص دائماً تسترجع قيمة true

  14. يمكنك استخدام الخدمتين بشكل مجاني ولكن بدون المميزات الكاملة للخدمة 

    • بالنسبة ل canva فيمكنك استخدام الخدمة ال pro فترة تجريبية لمدة شهر وبعدما يمكنك استخدام الخدمة المجانية ولكن إذا كنت تعمل لدى منظمة غير ربحية أو إذا كنت معلماً أو طالباً يمكنك التقديم على طلب للحصول على النسخة ال pro مجاناً
    • بالنسبة لكاتب فيمكنك استخدام الموقع مجاناً ولكن بمجرد اشتراكك سوف تحصل على 2000 كلمة يمكنك استخدامهم لتجربة الخدمة مجاناً. بعدها سوف تضطر للإشتراك في باقة من الباقات المدفوعة

    يمكنك الإطلاع على الأسعار لكلا الموقعين لتجد ما يناسب من الباقات

    • كاتب للإطلاع على الأسعار
    • canva للإطلاع على الأسعار
  15. هذه الدورة بالتحديد دورة علوم الحاسوب ليس شرطاً بها إتباع الترتيب الخاص بالمسارات الموجودة في هذه الدورة 

    (الأفضل بالطبع هو إتباع الترتيب) حيث أن هذه الدورة تقوم فيها بدراسة الأساسيات لذلك يمكنك تخطي مسار إلى عالم الويب حالياً

    وحتى تكون هذه الدورة واضحة بالنسبة لك فعند دراسة المسارات "البرمجة كائنية التوجه و الخورازميات وأنماط التصميم" يجب عليك دراسة أساسيات البرمجة أولاً حيث أن هذه المسارات تعتمد على مسار  أساسيات البرمجة

    غير ذلك لا ترتبط المسارات ببعضها كثيراً 

  16. يواجه الكل هذه المشكلة وذلك في بداية تعلمهم لمهارة جديده وليس هناك مشكلة في ذلك حيث أن عند دراسة مفاهيم جديدة مثلاً تعلم ال loop في لغة برمجة ما فعند التطبيق عليها بمثال بسيط يصبح الأمر سهل ولكن عند التفكير في طرق استخدامها في مشروع كامل ستجد الأمر أصعب من المثال البسيط 

    لذلك يعتبر هذه المشكلة موجودة في البداية والكل واجه هذه المشكلة وهي تطبيق جميع المهارات التي تعلمتها في مشروع كامل 

    والحل لهذه المشكلة  هو

    • التطبيق على مشروعات أو مواقع كاملة وراء مدرب أكثر من مرة والمحاولة بعدها بناء مشروع كامل بنفسك وستجد أن بناء المشروع بمفردك أصبح أسهل من ذي قبل 
    • قراءة والإطلاع على أكواد تطبيقات كاملة ويوجد لديك github يحتوي على ملايين التطبيقات قم بالتعلم منها طريقة بناء المشروع كاملاً وستتعرف وقتها على الطرق العملية لاستخدام المفاهيم التي تعلمتها
    • أعجبني 1
  17. بتاريخ 1 دقيقة مضت قال Ayman Alrawy:

    انا مساري هو باك اند ان شاء الله فهل احتاج التعمق في الشبكات؟

    من خلال المعلومات الموجودة في هذا المسار فهي أساسيات كافية ولكن إذا أردت التعمق أكثر فذلك بالطبع إضافة قوية لك في مجال الباك اند 

    • شكرًا 1
  18. يعتبر مسار إلى عالم الويب من أكثر المسارات أهمية في هذه الدورة حيث يتم دراسة آلية عمل الويب والشبكات والمتصفحات أي أنه يجب عليك دراسة المسار بتركيز أكبر لفهم المعلومات بشكل أكبر ويمكنك زيادة التركيز والإستفادة من هذا المسار من خلال

    • التركيز على فهم الدروس وتعلم كيفتسير الأمور في الويب
    • التركيز على المصطلحات بالطبع واجب  حيث أن هذه المصطلحات مهمة في عالم الويب والأفضل هو تدوين هذه المصطلحات حتى لا تنساها بعد فترة ويمكنك أيضاً التعمق فيها لاحقاً
    • إن لم تستطع فهم جزئية معينة يمكنك طرح السؤال ليجيبك أي مدرب حتى تثبت لديك المعلومة بشكل أكبر

    والأفضل حالياً هو دراسة ما في هذا المسار حالياً ولاحقاً يمكنك التعمق في هذه المفاهيم من خلال التدوينات التي تقوم بها

    • شكرًا 1
  19. كما في التعليقات السابقة فإن الإستضافات المجانية تحتوي على موارد محدودة لذلك لا ترتقي إلا أن تكون للتجربة فقط ولكن على أية حال يمكنك الإستفادة من العروض المجانية التي تقدمها Google Cloud و Azure و Amazon Web Services وهم الأفضل 

    • Amazon Web Services : يمكنك استخدام   AWS EC2 ، مجاني فقط لمدة 750 ساعة في الشهر في السنة الأولى كما أن طبقات التخزين AWS S3 و EFS الخاصة بهم مجانية لمدة 12 شهرًا مقابل 5 غيغابايت ، ولكن إذا كنت قلقًا بشأن الأصول ، فإن AWS CloudFront مجاني مقابل 1 تيرابايت. إذا كنت تريد تخزينًا يشبه S3 ، فقد ترغب في استكمال ذلك بخدمات أخرى.

    • Azure  لديك Azure App Service و Azure Functions ، والتي يجب أن تشغل الواجهة الخلفية Laravel Web و Queue Worker ، على التوالي. ستحتاج إلى إقران هذا بالتخزين وقاعدة البيانات ، والتي تكون مجانية لمدة 12 شهرًا 

    كما أنه يمكنك الإستفادة من خلال GitHub Student Developer Pack إذا كنت طالب حيث يمكنك الإستفادة من الإستضافات التي تقدمها مجانية وهي استضافات عالمية لذلك يمكنك الإستفادة بشكل كبير من ال GitHub Student Developer Pack  

  20. هناك العديد من الوسائل التي يمكنك من خلالها تسليم ملفات المشروع سواء كانت pdf أو أي نوع من الملفات ولكن أفضل طريقة هي تسليم الملفات عبر المحادثة على موقع مستقل من خلال زر إرفق ملفات كما في الصورة التالية

    Screenshot_20230213_120816.png.622c163daf4c2556c8dc2d1d6d681117.png

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

    اقتباس

    تأكد أولا من رفع ملفات المشروع المصدرية وتوثيقها بنقاش الصفقة، طلب التسليم يعني أنك أنهيت العمل على المشروع بشكل كامل ولم يعد هناك أي ملاحظات أو تعديلات لدى صاحب المشروع. لا ترسل طلب التسليم مالم تنتهي من تنفيذ المشروع بشكل كامل ونهائي.

     

  21. يعتبر هذه الطريقة هي الأفضل ولكن بشرط وهو التركيز على المفاهيم الأساسية في لغات البرمجة وهو ما يحدث في الدورات ولكن يجب إتباع هذه الأساسيات بالتطبيقات العملية 

    لذلك يوجد طريقتين للشرح 

    • الأولى وهي دراسة  اللغات البرمجية بشكل موسع وبالتفصيل  بشكل نظري وهذه الطريقة لن تجعل منك مبرمج لماذا ؟ لأن البرمجة تقوم على التطبيق في الأساس 
    • أما الطريقة الثانية وهي الموجودة في دورات حسوب شرح المفاهيم الأساسية التي يجب دراستها نظرياً أولاً ثم بعد ذلك التوسع والتعمق في اللغات البرمجية والتقنيات المختلفة بشكل عملي من خلال الكثير من التطبيقات العملية ربما سيقوم بالرجوع للتوثيق الرسمي للجزئية التي لم تفهمها وتلك هي حياة المبرمج بالضبط حيث أنه على يتوقف عن البحث عن المعلومات الجديدة
  22. تعتبر التوثيقات الرسميةالخاصة بالتقنيات من أفضل المصادر لتعلم هذه التقنية لذلك إذا كنت تريد تعلم firebase فيجب عليك التوجه للموقع الرسمي لل firebase من خلال هذا الرابط كما أن عند تعلم الأساسيات يفضل بناء عدة مواقع تستخدم بها ال firebase

    يمكنك أيضاً البحث عى اليوتيوب وستجد العديد من الدورات حول ال firebase 

    إذا كنت تفضل الدراسة من الكتب فيوجد 

    • The Definitive Guide to Firebase

    • Firebase Cookbook

    ولكن في النهاية تحتوي وثائق Firebase عبر الإنترنت على كل ما تحتاج إلى معرفته. سيكون أكثر حداثة من أي كتاب. تم إصدار الإصدار 9 مؤخرًا ويعتبر معظم الكتب الموجودة (إن وجدت) حول هذا الموضوع ستناقش الإصدار 8.

  23. بتاريخ 13 دقائق مضت قال Ali Zidan2:

    شكرا كثيرا..
    لكن اذا اردت حل الاختبار النهائي الذي يعطي الشهادة.. هل يكون عن الذي درسته. أم أنه حصرا عن كامل الدورة؟

    شكرا كثيرا..
    لكن اذا اردت حل الاختبار النهائي الذي يعطي الشهادة.. هل يكون عن الذي درسته. أم أنه حصرا عن كامل الدورة؟

    تكون الشهادة على كامل الدورة 

  24. بالطبع يمكنك التركيز على القسم الذي تفضل دراسته حالياً حيث أن الدورة تكون متاحة لك دائماً فليس هناك مشكلة في التركيز واحتراف قسم معين منها وذلك يعتبر أفضل لذلك يمكنك مثلاً دراسة إطار العمل django حالياً بالطبع مع الأساسيات الخاصة بالإطار ولغة python

    ويعتبر هذه الدورة تقوم بتغطية مجالات عديدة لذلك يمكنك الدخول في أي مجال لاحقاً من خلال الأقسام الموجودة بها

    ولكن حتى تستطيع الحصول على الشهادة تحتاج لدراسة أربع مسارات من الدورة على الأقل

    • أعجبني 1
×
×
  • أضف...