إعلان
دورة تطوير التطبيقات باستخدام لغة JavaScript في هذه الدورة ستتعلم لغة جافا سكريبت, استخدام مكتبة React.js, بناء API الموقع بواسطة Node.js, تطوير تطبيق جوال باستخدام React Native, و في نهاية الدورة ستتعلم تطوير تطبيق محادثة شبيه بتطبيق WhatsApp. تعلم الآن
دورة تطوير واجهات المستخدم في هذه الدورة ستتعلم لغة HTML و لغة CSS و لغة JavaScript. من ناحية التطبيق العملي ستتعلم طريقة بناء واجهة متجر إلكتروني مكون من ست صفحات, تحويل خمسة تصاميم PSD إلى صفحات ويب, بناء واجهة مستخدم تشبه موقع يوتيوب, بناء لوحة تحكم إحترافية. تعلم الآن
تطوير تطبيقات باستخدام لغة بايثون في هذه الدورة ستتعلم أساسيات البرمجة بلغة بايثون وصولاً إلى التعامل مع أشهر أطر العمل (Flask و Django) و ستتعلم كيف تبني متجر إلكتروني يمكن للمستخدمين البيع و الشراء من خلاله. تعلم الآن
دورة تطوير تطبيقات الويب باستخدام لغة PHP في هذه الدورة ستتعلم لغة PHP من الصفر, استخدام إطار العمل Laravel بشرح مفصّل و عملي, كيفية تطوير شبكة اجتماعية تشبه Instagram, بناء API لتطبيق جوال وفق أسلوب RESTful, تطوير موقع إعلانات مبوبة, تطوير نظام إدارة محتوى CMS كامل. تعلم الآن
دورة تطوير تطبيقات الويب باستخدام لغة Ruby في هذه الدورة ستتعلم البرمجة بلغة Ruby إنطلاقاً من أبسط المفاهيم وحتى بناء تطبيق حقيقي, إستخدام إطار العمل Ruby on Rails بشرح مفصّل و عملي, بناء تطبيق حقيقي عبارة عن شبكة اجتماعية تشبه تويتر, تطوير مجتمع الكتروني يشبه حسوب I/O. تعلم الآن
دورة علوم الحاسوب هذه الدورة معدة لتكون مدخل لعلوم الحاسوب و لغات البرمجة حيث ستتعرف فيها على أنظمة التشغيل و ستتعمق في نظام لينكس و في كيفية التعامل معه من خلال موجه الأوامر, بالإضافة إلى قواعد البيانات و أساسيات الشبكات و الخوادم و مبادئ الحماية والأمان في الويب. تعلم الآن

    البرمجة للمبتدئين التحقق من أنواع القيم

    أهمية التشييك على نوع القيمة

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

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

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

    طريقة التشييك على نوع القيمة المدخلة

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

    مهما كانت اللغة البرمجية التي ستتعامل معها مستقبلاً, كن على يقين أنها توفر لك العديد من الأوامر و الطرق السهلة التي يمكنك استخدامها للتشييك على الأنواع. لهذا لا تظن أنك في المستقبل ستواجه أي صعوبة بسبب هذا الأمر بالعكس هذا أمر تافه جداً.

    الآن في حال أردت التشييك على نوع القيمة التي يدخلها المستخدم في محرر الكود لمعرفة ما إن كانت هذه القيمة هي قيمة عددية أم قيمة نصية فهنا عندك طرق كثيرة يمكنك فيها تحقيق ذلك و سنركز فقط على الطريقتين التاليتين لأنها الأكثر بساطة و تؤدي المطلوب:

    • التشيك على القيمة باستخدام العامل typeof.
    • التشيك على القيمة باستخدام الدالة isNaN().

    طريقة استخدام العامل typeof

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

    مثال

    write("Enter a value: ");
    var x = read();
    
    if (typeof(x) == "number")
    {
        write("X contains a number."); 
    }
    else if (typeof(x) == "string")
    {
        write("X contains a string."); 
    }
    else
    {
        write("X contains a " + typeof(x)); 
    }
            

    عند التشغيل في حال قمت بإدخال رقم مثل 3 فستكون النتجية كالتالي.

    Enter a number: 3
    X contains a number.

    عند التشغيل في حال قمت بإدخال نص مثل abc فستكون النتجية كالتالي.

    Enter a number: abc
    X contains a string.

    جرب الكود


    ملاحظة

    في المثال السابق لم يكن هناك أي داعي لوضع الجملة else لأن الدالة read() ترجع ما يدخله المستخدم إما كنص أو كرقم و لا يوجد أي إحتمال آخر.

    سبب قيامنا بوضع else هي تعليمك كيف تعرف نوع قيمة المتغير بشكل عام.

    طريقة استخدام الدالة isNaN()

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


    معلومة تقنية

    إسم هذه الدالة مشتق من جملة is Not a Number و التي تعني: هل القيمة غير عددية؟

    في عالم البرمجة القيمة يمكن أن تكون عددية, نصية, مصفوفة, كائن إلخ..
    يكفي لك الآن التركيز فقط على أن تكون القيمة عددية أو غير عددية.


    لاستخدام الدالة isNaN() يجب تمرير إسم المتغير الذي تريد فحص قيمته بين أقواسها و هي سترجع القيمة:

    • true إذا كانت قيمته غير عددية.
    • false إذا كانت قيمته عددية.

    في المثال التالي طلبنا من المستخدم إدخال عدد, و من بعدها قمنا بالتشييك على نوع القيمة التي قام بإدخالها لمعرفة ما إن كان قد أدخل عدد فعلاً أم لا.

    مثال

    write("Enter a number: ");
    var x = read();
    
    if (isNaN(x))
    {
        write("X is not a number."); 
    }
    else
    {
        write("X is number."); 
    }
            

    عند التشغيل في حال قمت بإدخال نص مثل Mhamad فستكون النتجية كالتالي.

    Enter a number: Mhamad
    X is not a number.

    عند التشغيل في حال قمت بإدخال رقم مثل 3.5 فستكون النتجية كالتالي.

    Enter a number: 3.5
    X is number.

    جرب الكود

    إعلان

    Eqla3Tech.com

    شروحات مكتوبة حول لغات البرمجة و تقنية المعلومات باللغة العربية مقدمة من إقلاع تك.

    لغة جافا لغة ++C قواعد البيانات نظام ويندوز نظام لينكس الشبكات تقنية المعلومات

    الدورات

    أدوات مساعدة

    الأقسام

    دورات
    مقالات أسئلة مشاريع كتب