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

لوحة المتصدرين

  1. Wael Aljamal

    Wael Aljamal

    الأعضاء


    • نقاط

      4

    • المساهمات

      6975


  2. Salah Eddin Beriani2

    Salah Eddin Beriani2

    الأعضاء


    • نقاط

      3

    • المساهمات

      847


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

    • نقاط

      3

    • المساهمات

      4901


  4. Mohammed Saber6

    Mohammed Saber6

    الأعضاء


    • نقاط

      2

    • المساهمات

      1036


المحتوى الأكثر حصولًا على سمعة جيدة

المحتوى الأعلى تقييمًا في 04/12/21 في كل الموقع

  1. يمكنك تنفيذ هذا عن طريق استخدام useEffect hook componentDidMount useEffect(() => { // الكود البرمجي هنا }, []); // هنا المصفوفة يجب أن تكون فارغة componentDidUpdate useEffect(() => { // الكود البرمجي هنا }, [a, b]); //هنا المصفوفة يجب أن تحتوي على المتغيرات التي بناء عليها سيتم عمل تحديث المتغيرا ت هي props - state componentWillUnmount useEffect(() => { // الكود البرمجي هنا return () => { // قم باستخدام الدالة // الأشياء التي تريد تنفيذها عند الخروج من المكون } }, [a, b]); //هنا المصفوفة يجب أن تحتوي على المتغيرات التي بناء عليها سيتم عمل تحديث المتغيرا ت هي props - state قم بإحاطة المكون الخاص بك ب React.memo حسب التوثيق الرسمي const Button = React.memo((props) => { // المكون الخاص بك });
    2 نقاط
  2. اذا كان لديك مكون import React from 'react'; export default function index() { return <div></div>; } فيفي الخلفية تستخدم React لانشاء العناصر React.createElement("div", null); و هذا يفسر أنه عند عدم استيراد React سيحدث معك خطأ مفاده أن React ليس معرف
    2 نقاط
  3. إذا كنت تستخدم JSX وهو عبارة html و javascript والذي يكون بعد كلمة return في الدالة render فيجب عليك دائما إستدعاء React لأن في الخلفية React يقوم بمعالجة ال JSX ويستدعي دالة خاصة لبناء عنصر html في ال DOM object والدالة المستخدمة لمعالجة الJSX وإنشاء عنصر جديد في ال DOM object هي React.createElement فالمشكلة إذا لم تستدعي React لن تستطيع إستدعاء هذه الدالة في الخلفية
    2 نقاط
  4. أنت تعرف من خلال ملفك الشخصي، ككاتب مستقل. لديك فرصة واحدة لإقناع العملاء بأنك الشخص المناسب. وهذا يعني أنه بدون ملف شخصي رائع، لن تستمر في هذا العمل طويلًا. وإلى جانب عرض مهاراتك، فإن الهدف الأساسي من ملفك الشخصي هو الحصول على الثقة. يريد الناس معرفة من يوظفون. إذا كان كل مشروعك على الإنترنت، فأنت تحتاج إلى أن تبذل جهدًا إضافيًا لكسب تلك الثقة. وهذا يعني أن تضيف بعض المعلومات عن نفسك. ستتحدث هذه المقالة عن كيفية تحسين ملفك الشخصي لعملك المستقل، من خلال إضافة قسم السيرة الذاتية. لنبدأ! ماذا تتضمن في ملفك الشخصي لعملك المستقل؟ هناك عدة عناصر يجب أن يتضمنها كل ملف شخصي للعمل المستقل. مثلًا، يجب أن تكون أفضل أعمالك في المقدمة والوسط؛ لأن ذلك هو ما سيراه الناس. وبالإضافة إلى كونك موهوبًا، تريد أن تريهم أنك شخص رائع للعمل معه. من بعض الطرق التي يمكنك بها إظهار ذلك لعملائك المحتملين هو تضمين آراء الزبائن، بعض الصور لك، روابط لمواقع التواصل الاجتماعي وقسم السيرة الذاتية. هدف كتابة السيرة الذاتية هو إعطاء العملاء لمحة مختصرة عنك. وغالبًا، قد يعتقد العملاء المحتملين بأنك موهوب، لكنهم قد لا يختارون توظيفك إذا لم تشارك أي معلومات حول نفسك. تذكر - أنت تبحث عن عمل بنفسك وليس عن طريق منصات العمل المستقل. هذا يعني أن الزبائن لا يستطيعون رؤية تقييماتك السابقة والوصول إلى كل معلوماتك. وبدلًا من ذلك، إذا كنت تريد إيصال أنك الشخص المناسب للوظيفة، فهذا يعود لك. 4 نصائح لتحسين كتابة سيرة ذاتية لعملك المستقل لا يملك معظمنا أي خبرة في كتابة السير الذاتية. المشكلة تكمن في أن معظم العملاء لا يهتمون كثيرًا برمزك أو إذا كنت تحب المشي على الشاطئ. ما يريدونه هو لمحة عن طريقة تفكيرك المهنية، والتي تقودنا إلى النصائح التالية. اجعلها مختصرة لا أحد يريد قراءة الكثير من الصفحات حول تاريخ حياتك كاملة، إلا إذا كنت قد وجدت علاجًا لمرض بنفسك. يجب أن تكون السير الذاتية الخاصة بعملك المستقل قصيرة ولطيفة. وهنا كل شيء تحتاج لتغطيته: الخبرة المهنية مشاريع مميزة أو عملاء عملت معهم بعض الأمثلة على المشاريع الشخصية ما هي نقاط قوتك المميزة بعض التحليلات لشخصيتك إذا كانت القائمة تبدو كأنها كتابة سيرة ذاتية، فأنت على الطريق الصحيح. والوضع المثالي هو أنك تريد إعطاء لمحة عن شخصيتك وهواياتك. ولكن، يجب أن يكون التركيز الرئيسي في سيرتك الذاتية على حياتك المهنية دائمًا. ومن واقع خبرتي -يقول الكاتب-، إذا كان يجب أن أقرأ سيرتك الذاتية بالكامل، وكانت طويلة جدًا، اذهب واختصرها. ضع صورة جيدة من إحدى أسوأ الأخطاء التي يركبها معظم المستقلين، هي عدم وضع صورة مهنية واحدة على الأقل في ملفهم الشخصي. لا يعني ذلك أنك تحتاج أن ترتدي بدلة، بل صورة واحدة مناسبة للرأس من شأنها أن تحدث فرقًا. لا يحب الكثير من الناس مشاركة صور لأنفسهم. ولكن تم التأكد من أنه لا يوجد عميل جاد يحكم عليك من مظهرك. يعد تضمين صورة شخصية مجرد طريقة بسيطة لإظهار أنك (أ) شخص حقيقي (ب) لست في عمر ال 15 وتتظاهر بأنك محترف. لديك صورة واحدة على الأقل لنفسك في مكان ما. ارفعها وضعها في مكان ما بحيث يستطيع الزائرون رؤيتها في ملفك الشخصي، وسيكون وضعك جيدًا. ركّز على نقاط قوتك ومواهبك المميزة يوجد منافسة كبيرة في مجال الكتابة كعمل مستقل. وبما أنني عملت -يقول الكاتب- في كلا الجانبين، أستطيع القول أنك إذا أعلنت عن وظيفة في مجال الكتابة، ستحصل على عشرات الطلبات إذا لم يكن أكثر. وبالتأكيد هناك مرشحين مميزين. يكون السبب في معظم الحالات، هو أن ملفاتهم الشخصية مرموقة ويعرفون كيف يقنعون العملاء بتوظيفهم. لنقل على سبيل المثال أنك كاتب مستقل بخبرة تتجاوز 5 سنوات. يبدو ذلك جيدًا، ولكنه مفهوم واسع لا يجذب أي شخص. من ناحيةٍ أخرى، إذا قلت أنه لديك خبرة 5 سنوات في الكتابة وخصوصًا الدروس التعليمية لتطوير المواقع الإلكترونية، مع التركيز على WordPress وتم نشرها على مواقع إلكترونية، فهذا أفضل. ككاتب مستقل، كلّما كنت أكثر تحديدًا، زادت الفرصة لتوظيفك، وذلك إذا كان السوق يطلب مجال اختصاصك بالطبع. تعد سيرتك الذاتية لعملك المستقل المكان المثالي لمشاركة تلك المعلومات. حافظ على تواضعك يعد الغرور أمرًا شائعًا بين المستقلين الناجحين. تعني عقلية البيع التي تحتاجها للحصول على عملاء جدد، أنك تمجد محاسنك الخاصة. لا يعد هذا أمرًا سيئًا بحد ذاته، ولكن قلل منه عندما تكتب سيرتك الذاتية. مثلًا، إذا أطلقت بعض القصص القصيرة في موقع Amazon، لا يجعلك هذا مؤلفًا ناشرًا (هذا أمر حقيقي رأيته عدة مرات). من المهم أن تمثل سيرتك الذاتية وملفك الشخصي مهاراتك بدقة. نحن نعرف أن الجميع يضخم الأمور قليلًا في ملفاتهم الشخصية وسيرهم الذاتية، ولكنك ترغب بأن يكون ذلك أقل ما يمكن. الدقة والمصداقية في مهاراتك، ستجعل علاقة العمل أفضل. وفي الجانب الآخر، إذا كان لديك ملفًا شخصيًا وسيرة ذاتية مرموقة، تفاخر بها قليلًا بكل الطرق - لديك كل شيء لفعل ذلك. الخاتمة قد تبدو كتابة سيرتك الذاتية أمرًا صعبًا. ولكن فكر بها على أنها إعطاء لمحة عن نفسك للعملاء المحتملين. إذا جعلت سيرتك الذاتية تبدو جيدًا ولديك مجموعة من أعمال الكتابة باسمك، يصبح إيجاد الأعمال أسهل بكثير. تذكر هذه النصائح المتعلقة بكيفية تحسين سيرتك الذاتية وملفك الشخصي: اجعلها مختصرة ضمّن صورة واحدة على الأقل لنفسك ركز على نقاط قوتك ومهاراتك المميزة حافظ على تواضعك هل لديك أي أسئلة حول كيفية تحسين ملفك الشخصي الخاص بعملك المستقل؟ ضعها في قسم التعليقات أدناه. ترجمة وبتصرف للمقال How to Write the Perfect Bio for Your Freelance Portfolio لكاتبه Alexander Cordova
    1 نقطة
  5. مقدمة إلى المفهوم الكائني تُعتبر لغة سي شارب لغة برمجة كائنيّة صرفة pure object oriented programming language فكلّ ما تشاهده أمامك في سي شارب عبارة عن كائن. سيكون هذا الدّرس نظريًّا بعض الشيء ولكن فهمه بالشكل الصحيح يُعدّ أمرًا حيويًّا للبرمجة باستخدام سي شارب. ولنكن واقعيين، فإنّ هذا الدرس يُعتبر مدخلًا مبسّطًا للغاية إلى هذا الموضوع المهم والضخم ولا يمكن اعتباره بأيّ حال من الأحوال مرجعًا للبرمجة كائنيّة التوجّه. ستحصل -بعد قراءتك لهذا الدرس- على المعرفة الضروريّة للتمييز بين الأصناف classes والكائنات objects وفهم العلاقة بينهما. بالإضافة إلى فهم المبادئ الأوليّة للوراثة والتغليف. لكي نفهم ما هو الصنف وما هو الكائن اسمع منّي هذه القصّة: نتبع نحن البشر إلى ما يسمّى بالصنف الإنساني. يُعرّف هذا الصنف المزايا التي يجب أن يتمتّع بها كلّ إنسان. فمثلًا لكلّ إنسان اسم وطول ووزن ولون عينان وبصمة إبهام مميّزة تميّزه عن أيّ إنسان آخر. يُعرّف الصنف class الإنسانيّ هذه الصفات السابقة، بحيث أنّ كلّ كائن object إنسانيّ من هذا الصنف تكون له مثل هذه الصفات ولكنّ مع مجموعة خاصّة من القيم لها. فمثلًا الكائن من الصنف الإنساني هو إنسان قد يكون اسمه سعيد وطوله 180 سم ولون عينيه أسود وله بصمة إبهام مميّزة، وهذا الإنسان يختلف عن كائن إنسانيّ آخر، اسمه عمّار وطوله 175 سم ولون عينيه بنيّ وله أيضًا بصمة إبهام مميّزة خاصّة به، وهكذا. ندعو الصفات السابقة بالخصائص Properties، فالصنف Class يعرّف الخصائص، أمّا الكائن Object فيتمتّع بهذه الخصائص ولكن مع مجموعة قيم لها تميّزه عن كائنٍ آخر. أمر آخر، يُعرّف الصنف الإنساني أيضًا سلوكيّات أو إجراءات معيّنة خاصّة للكائنات التي تعود للصنف الإنسانيّ. فهناك مثلًا سلوكيّات المشي والجري والضحك. وفي الغالب أنّ كل كائن يُعبّر عن هذه السلوكيّات بشكل يراعي خصوصيّته. فلكلّ منّا أسلوب مختلف في الضحك. كما يمتلك كلّ منّا أسلوب مختلف في المشي والجري، فقد تميّز إنسانًا لا ترى وجهه من خلال مشيته فقط وهذا أمر واردٌ جدًّا. مثل هذه السلوكيّات Methods نصطلح عليها في البرمجة بالتوابع. فالصنف الإنسانيّ يُعرّف وجود مثل هذه السلوكيّات ولكلّ كائن إنسانيّ الحريّة في التعبير عن هذه السلوكيّات بالشكل الذي يرغبه. التابع في البرمجة يضم تعليمات برمجية يجري تنفيذها عند استدعائه. يعالج ويتعامل هذا التابع عادةً مع الخصائص والتوابع الأخرى الموجودة ضمن نفس الكائن. نسمي التوابع والخصائص بأعضاء الصنف class members وهناك أعضاء أخرى سنتناولها في الدروس التالية. المبادئ العامة للمفهوم كائني التوجه هناك المئات من المقالات والكتب التي تتحدّث عن المفهوم الكائنيّ من منظورات مختلفة، وهناك أساليب متعدّدة تسمح بتحليل المسألة المطروحة وتصميمها وفق أسلوب كائنيّ أو ما يُعرف بالتصميم والتحليل كائنيّ التوجّه OOAD. ولكن يكفيك أن تعرف الآن أنّ هناك مبدآن أساسيّان ينبغي أن تتمتّع بها أيّ لغة برمجة تدعم المفهوم كائنيّ التوجّه وهما: التغليف Encapsulation والوراثة Inheritance. وهناك مفهوم مهم آخر يستند إلى الوراثة وهو التعدّديّة الشكلية Polymorphism. التغليف Encapsulation وهو مبدأ جوهري في البرمجة كائنيّة التوجّه، وهو أحد أسباب ظهور هذا المفهوم. يُقرّر هذا المبدأ أنّه ليس من المفترض أن نطّلع على آلية العمل الداخلية للكائن. ما يهمنا هو استخدام الكائن وتحقيق الغرض المطلوب بصرف النظر عن التفاصيل الداخليّة له. تأمّل المثال البسيط التالي: عندما نقود السيّارة ونريد زيادة سرعتها فإنّنا بكلّ بساطة نضغط على مدوسة الوقود. لا أعتقد أنّ أحدًا يهتمّ بالآلية الميكانيكيّة التي تقف وراء الضغط على مدوسة الوقود. فالمطلوب هو زيادة سرعة السيّارة فحسب دون الاهتمام بالتفاصيل الداخليّة. فالسيّارة تُغلّف encapsulate التفاصيل الميكانيكيّة الداخليّة التي تقف وراء زيادة سرعة السيّارة. السيّارة في هذا المثال هو كائن Object. وعمليّة زيادة السرعة هي سلوكيّة (تابع) Method من كائن السيّارة. هناك مثال آخر كثيرًا ما نراه أثناء تجوّلنا في الشوارع ومحطّات القطار وصالات الانتظار، وهو آلات تحضير المشروبات الساخنة. نقف أمام الآلة نُدخل النقود ثمّ نضغط على زرّ محدّد لنحصل على المشروب الساخن الذي نرغب به. لا نهتمّ عادةً بالتفاصيل الداخليّة التي تحدث ضمن الآلة عندما نضغط أحد الأزرار للحصول على كوب من القهوة. فالآلة هنا تُعتبر كائنًا، وعمليّة الحصول على كوب من القهوة هي سلوكيّة Method من هذا الكائن. فهذه الآلة تعمل على تغليف encapsulate التفاصيل الداخليّة لعمليّة التحضير، فكلّ ما نفعله هو ضغط الزر ومن ثمّ نحصل على الناتج المطلوب. فإذا ما أُجري تعديل في الآلة بحيث تتغيّر طريقة تحضير مشروب ساخن لجعله أفضل وأكثر لذّة، فإنّ ذلك لن يؤثّر مطلقًا على أسلوب التعامل مع الآلة للحصول على نفس المشروب، ولن نلاحظ هذا التعديل إلّا بعد تذوّقنا للمشروب وملاحظة الفرق في المذاق. الوراثة Inheritance تُعتبر الوراثة من أهم أشكال إعادة الاستخدام للمكوّنات البرمجيّة، حيث يعمل الصنف الجديد على الاستفادة من المكوّنات الموجودة مسبقًا ضمن الصنف الذي "يرث" منه ويجري عليها بعض التعديلات التي تناسبه على نحو مخصّص. فبدلًا من إنشاء صنف جديد من الصفر، يمكننا إنشاء صنف يعتمد على صنف آخر ويستفيد من خصائصه وسلوكيّاته (توابعه) الموجودة مسبقًا ثمّ يكيّفها أو يضيف عليها. نسمّي الصنف الأساسي الذي نرث منه بالصنف الأب. أمّا الصنف الذي يقوم بعمليّة الوراثة فنسمّيه بالصنف الابن أو بالصنف المشتق. لتثبيت الفكرة لنتناول المثال التالي. في المدارس هناك ثلاثة أنواع أساسيّة من الأشخاص المتواجدين فيها: الطلاب والمدرّسون والإداريّون. يمكننا بناء صنف عام يُمثّل أي شخص يعمل في المدرسة وليكن SchoolMember يحتوي هذا الصنف على خصائص مثل: الاسم والكنية واسم الأب واسم الأم وتاريخ الميلاد ورقم الهاتف. يمكننا البناء على هذا الصنف عندما نريد إنشاء أصناف أكثر "تخصّصًا" منه. مثل الصنف الذي يُعبّر عن الطلاب Student والصنف الذي يُعبّر عن المدرّسين Teacher، والصنف المُعبّر عن الإداريين Staff. يرث كلّ صنف منها من الصنف الأب SchoolMember فيصبح لكلّ منها نفس الخصائص الموجودة ضمن الصنف SchoolMember بشكل تلقائيّ. من الواضح أنّ الصنف Student مخصّص أكثر من الصنف SchoolMember فهو يحتوي بالإضافة إلى الخصائص الموجودة في SchoolMember خصائص فريدة خاصّة به. فمثلًا من الممكن أن يحتوي على الخاصيّة التي تعبّر عن الصفّ الحالي Grade وعن السلوك العام Behavior للطالب، أمّا صنف المدرّس Teacher فمن الممكن أن يحتوي (بالإضافة إلى الخصائص الموجودة ضمن SchoolMember) على خاصيّة Course التي تُعبّر عن المقرّر الذي يدرّسه (رياضيّات، فيزياء ...الخ) والخاصيّة WeeklyHours التي تعبّر عن عدد الساعات التدريسيّة الأسبوعيّة المكلّف بها. وينطبق نفس المفهوم تمامًا على الصنف Staff الذي يعبّر عن الموظّفين الإداريين في المدرسة. فالوراثة تنتقل بنا من الشكل الأكثر عموميّةً SchoolMember إلى الشكل الأكثر تخصيصًا مثل Student. وفي الحقيقة كان من الممكن أن نتابع عمليّة الوراثة اعتبارًا من الصنف Staff فهناك قسم التوجيّه وهناك أمانة السر والإدارة وغيرها، وكلّ منها يمكن أن يرث من الصنف Staff. التعددية الشكلية Polymorphism بفرض أنّنا نريد بناء برنامج يحاكي الحركة الانتقاليّة لعدّة أنواع من الحيوانات لدراسة حيويّة. كلّ من أصناف السمكة Fish والطائر Bird والضفدع Frog ترث من الصنف Animal الذي يمثّل أيّ حيوان. بفرض أنّ الصنف Animal يحتوي على سلوكيّة (تابع) اسمها Move (تُعبّر عن الانتقال)، فكما نعلم أنّ هذه السلوكيّة ستصبح وبشكل تلقائي موجودة ضمن أيّ صنف يرث من الصنف Animal، وهنا تكمن التعدديّة الشكليّة. فكل صنف من الأصناف Fish وBird وFrog يُعبّر عن عملية الانتقال Move بشكل مختلف. فالسمكة ربما تنتقل عن طريق السباحة مترًا واحدًا عند استدعاء التابع Move. أمّأ الطائر Bird فمن الممكن أي يطير مسافة 10 متر عند كل استدعاء للتابع Move، وأخيرًا فإنّه من الممكن للضفدع أن يقفز مسافة 20 سنتيمتر كلّما استدعي التابع Move. فالتابع Move المعرّف ضمن الصنف Animal يمكن التعبير عنه بأشكال متعدّدة ضمن الأصناف الأبناء Fish وBird وFrog كلٌّ بحسب حاجته. الخلاصة تعرّفنا في هذا الدرس على المفهوم العام للبرمجة كائنيّة التوجّه وتعاملنا مع التغليف حيث لا تهمّنا التفاصيل الداخلية لآلية العمل. والوراثة التي تتعلّق بمفهوم إعادة الاستخدام والانتقال من العام (الأب) إلى المخصّص (الابن). بالإضافة إلى التعدديّة الشكليّة التي تسمح لنا بإكساب سلوكيّات مخصّصة للأصناف الأبناء تنسجم مع طبيعتها. سنتناول في الدروس التالية هذه المفاهيم بشكل تطبيقي في سي شارب.
    1 نقطة
  6. مرحباً أنا لم أدرس التصميم ولكنني أمارسه كمبتدئه على برنامج Camtasia studio كوني أعمل في مونتاج الفيديوهات أعلم بأن برامج التصميم أكثر احترافية ونطاق العمل فيها واسع لذلك أريد استشارة من المصممين عن برنامج للتصميم أبدأ العمل فيه كمبتدئة وأن يكون سلساً سهلاً غير معقد فأنا على وشك إطلاق مشروعي الخاص وأقوم حالياً بتصميم البوسترات والفيديوهات التعريفية له ويفضل أن يحتوي البرنامج على امكانية اضافة شخصيات characters ليس عندي فكرة هل جميع برامج التصميم يمكن إضافة الشخصيات فيها أم لا؟
    1 نقطة
  7. لدي سيرفر express لعمل API بسيط، وأقوم بعمل get request بسيط ويعيد الطلب الآتي: { id: 1, name: "Adam" } في البداية كنت استخدم jquery ajax، مع ذلك لا أعرف كيف أقوم بإستخدام دالة من نوع Async/Await بإستخدام مكتبة axios، هذا هو الكود الخاص بي: class Data extends React.Component{ async getData(){ const res = await axios('/api'); console.log(res.json()); return res.json() } render(){ return( <div> {this.getData()} </div> ); } } ومع ذلك أحصل على الخطأ التالي: Objects are not valid as a React child (found: [object Promise]). If you meant to render a collection of children, use an array instead. هل أقوم بشيء خاطيء هنا؟
    1 نقطة
  8. أعتذر لا يوجد شيفرات برمجية إنما أخبرتك بأفضل طريقة حل بالنسبة لي: رابط المكتبة : cached_network_image إذا كانت الفكرة صعبة .. قم فقط بتخزين رقم الصورة التي نقر عليها المستخدم ثم حفظها في shared_preference ومن ثم استدعاء نفس الصورة لنفس الدليل ضمن imgList. يمكنك استخدام التأثير HERO في flutter الذي يعطي تأثير انتقال جميل بين الشاشات بتكبير الصورة و عمل تأثيرات حركية. بالتوفيق
    1 نقطة
  9. مرحبا مروان، نعم نستطيع معرفة الصورة المنقولة و الأفضل أن تستعمل shared_preference فهي الأسهل و الأسرع و لمنع تكرار الصور استخدم المكتية cached_network_image أعتقد أن الأفضل من تخزين الصور ك imgList List احفظهم بصيغة جيسون بحيث تحوي على ال id و الرابط وأيضا يمكنك تحميلها و تخزينها في shared_preference و دائما الوصول للصورة عن طريق المعرف ومن خلال غرض json نقراء الرابط و نطلبه من خلال cached_network_image ليتم جلب الصور بسرعة
    1 نقطة
  10. في الصورة المرفقة سابقاً قمت بإنشاء الغرض Scanner مرتين، مرة بداخل التابع الأساسي main ومرة أخرى في التابع الآخر، ويجب عليك استخدامها مرة واحدة في حال أردت تمرير المتغيرات بين التوابع أو حسب استخدامك لها. أما بالنسبة للخطأ، في حال لم يتم حل المشكلة بعد هذه التعديلات يمكنك إرفاق الكود الذي تحاولين كتابته والخطأ الذي يظهر لك.
    1 نقطة
  11. سأرفق توضيح لماذا تعطي هذه التعليمة نفس النتيجة كما أخبرنا المدرب سامح: ماذا تعني seed : كترجمة هي البذرة أو القيمة البدائية التي تأخذها دوال التوزيع العشوائي لبناء سلسلة أرقام عن طريق التعوص في معادلة لها صيغة ثابتة، مثلا: x = seed fx = 2 * x + 1 x = 0 fx1 = 2 * 0 + 1 = 1 fx2 = 2 * 1 + 1 = 2 fx3 = 2 * 2 + 1 = 5 fx4 = 2 * 5 + 1 = 11 في كل قيمة لتابع التوليد العشوائي يعتمد على قيمة إما ثابتة أو على القيمة التي نتجت من الاستدعاء السابق لذلك بتثبيت قيمة البذرة نحصل على نفس متسلسلة الأعداد دوماً. يمكنك تمرير قيمة الوقت و سيعطي نتائج مختلفة لتغير البذرة ..
    1 نقطة
  12. الإدخال من المستخدم في جافا يتم عن طريق استخدام System.in وهو standard input stream ويمكننا السماح بالإدخال حسب نمط البيانات الذي ننتظر من المستخدم أن يقوم بإدخاله، مثل sc.nextLine لإدخال سلسلة نصية String أو nextInt لإدخال أعداد. مثال بسيط لإدخال الأرقام وطباعة مجموعها: import java.util.*; class UserInputDemo { public static void main(String[] args) { Scanner sc= new Scanner(System.in); System.out.print("Enter first number- "); int a= sc.nextInt(); System.out.print("Enter second number- "); int b= sc.nextInt(); System.out.print("Enter third number- "); int c= sc.nextInt(); int d=a+b+c; System.out.println("Total= " +d); } } والبرنامج السابق في المثال سيسمح للمستخدم بإدخال 3 أعداد ثم سيقوم بطباعة الناتج.
    1 نقطة
  13. الكود صحيح ولكن الخطاء هو انك نسيت استبدال ال username الموجود في خانة البحث بالمتغير $wUserName=$_POST['wUserName']; $sql="SELECT * FROM xuser WHERE wUserName='$wUserName'"; وهناك عملية البحث عن اذا كان اليوزر موجود او لا طويله جداً بامكانك اختصارها هكذا $result->num_rows; بدون الحاجة لوضعها في داخل وكتابة while
    1 نقطة
  14. يمكنكي أن تستخدم مكتبة os.path وهي توفر دالة ()exists وهذه الدالة تقوم بإرجاع قيمة true أو false كالتالي import os.path os.path.exists(file_path) وتوجد أيضاً دالة ()isfile للتأكد إذا كان ملف أم لا كالتالي os.path.isfile(file_path) ولا تنسي إستدعاء المكتبة
    1 نقطة
  15. loc : تعمل فقط مع الدليل (index) iloc : تمعل مع الموقع (position) مثال: نقوم بإنشاء اطار البيانات التالي: df = pd.DataFrame({'age':[30, 2, 12, 4, 32, 33, 69], 'color':['blue', 'green', 'red', 'white', 'gray', 'black', 'red'], 'food':['Steak', 'Lamb', 'Mango', 'Apple', 'Cheese', 'Melon', 'Beans'], 'height':[165, 70, 120, 80, 180, 172, 150], 'score':[4.6, 8.3, 9.0, 3.3, 1.8, 9.5, 2.2], 'state':['NY', 'TX', 'FL', 'AL', 'AK', 'TX', 'TX'] }, index=['Jane', 'Nick', 'Aaron', 'Penelope', 'Dean', 'Christina', 'Cornelia']) يمكن استخدام loc للحصول على سطر بيانات واحد: df.loc['Penelope'] و النتيجة: age 4 color white food Apple height 80 score 3.3 state AL Name: Penelope, dtype: object أما في حال أردنا اختيار سطر بحسب رقم السطر، نستخدم iloc: df.iloc[4] و النتيجة: age 32 color gray food Cheese height 180 score 1.8 state AK Name: Dean, dtype: object
    1 نقطة
  16. حتضيف متغير وليكن هكذا var items = []; ثم حتعمل loop بهذا الشكل للبيانات التي تم إرجاعها من api for (int i = 0; i < kSlidersImages.length; i++) { items.add(Image.network(kSlidersImages[i])); } ثم بداخل SliderCarousel ستضع التالي items: items,
    1 نقطة
  17. التنسيقات داخل &$checked سوف تذهب الا للعنصر الذي يحمل الكلاس root و checked وترجمة الكود الى css طبيعي ستكون .root { color: red ; } .root.checked{ color: red ; } .checked{}
    1 نقطة
  18. هماك خطأ بسيط في الكود وهو المجال ل this في ال setTimeout حيث سوف تعود ال this للكائن window وليس ال component ولذلك يمكننا حل هذه المشكلة عن طريق عمل binding عن طريق توليد دالة جديدة بمجال scope محدد setTimeout(function(){this.setState({count: 1})}.bind(this), 3000); أو يمكنك استخدام ال arrow function كالتالي setTimeout(()=>this.setState({count: 1}), 3000);
    1 نقطة
  19. يمكننا تقسيم ال rule التالية '&$checked' لجزئين & هذه العلامة تعني ال rule الأب أي في حالتنا هنا فهو ال root checked$ فهي تقوم بتوليد rule جديد من نفس ال rule الموجود في المثال الموجود سيكون ال rule الناتجة هي "root.checked:"
    1 نقطة
  20. إستعمال np.random.seed يجعل الأرقام العشوائية المولدة قابلة للتوقع (أو يمكن توليد نفس الأرقام العشوائية أكثر من مرة)، فعلى سبيل المثال الكود التالي سيخرج نفس النتيجة: >>> import numpy as np >>> np.random.seed(0) >>> print(np.random.permutation(10)) [2 8 4 9 1 6 7 3 0 5] >>> np.random.seed(0) >>> print(np.random.permutation(10)) [2 8 4 9 1 6 7 3 0 5] لاحظ أن نتيجة الأرقام العشوائية واحدة، وذلك لأننا قمنا بتشغيل (0)np.random.seed مرة أخرى. ويتم إستعمالها في الحالة التي لديك، لكي تظهر نفس النتيجة كل مرة تحاول تشغيل الـ notebook، لكن إن لم نستعملها ففي كل مرة يتم تشغيل الـ notebook ستكون النتيجة عشوائية تمام.
    1 نقطة
  21. صعب تحديد المشكلة بشكل مباشر، هل ممكن ترفق ملفات المشروع ؟
    1 نقطة
  22. ملخص للأخطاء. إرسال البيانات بطريقة مختلفة عن التي تستقبلها PHP يجب التأكد من توافق HTTP method أي POST - GET .. تنفيذ تعليمات SQL في PHP my Admin قبل وضعها في كود PHP للتأكد من عملها بطريقة صحيحة (وجود فاصلة منقوطة في منتصف التعليمة يحول دون تنفيذها) تعتير PHP المتغيرات الموجودة ضمن اقتباس فردي كنص ولا تقوم باستبدال قيمته أي: $name = 'wael'; Or $name = "wael"; // هنا لا يوجد فرق echo "$name"; => wael // استبدال المحتوى echo '$name'; => $name // تقتباس المحتوى حقول ID نفعل الخاصية Auto Incriment ولا نقوم بإضافة الرقم بطريقة يدوية.
    1 نقطة
×
×
  • أضف...