المتغيرات وأنواع البيانات
في البرمجة، نحتاج إلى تخزين المعلومات لاستخدامها لاحقاً. هنا يأتي دور المتغيرات (Variables)! المتغير هو مثل صندوق تضع فيه قيمة ما وتعطيه اسماً لتتمكن من الرجوع إليه.
إنشاء المتغيرات
في روبي، إنشاء المتغيرات بسيط جداًّ. لا تحتاج لتحديد نوع البيانات - روبي تكتشفه تلقائياً.
الناتج:
لاحظ أننا استخدمنا علامة = لتعيين القيمة للمتغير. هذا يسمى عامل التعيين (Assignment Operator).
قواعد تسمية المتغيرات
لتسمية المتغيرات في روبي، اتبع هذه القواعد:
- تبدأ بحرف صغير أو شرطة سفلية
_ - تحتوي على حروف وأرقام وشرطات سفلية فقط
- لا تحتوي على مسافات
- لا تبدأ برقم
اصطلاح snake_case
في روبي، نستخدم snake_case لتسمية المتغيرات - أي نفصل الكلمات بشرطة سفلية:
أنواع البيانات الأساسية
روبي تدعم عدة أنواع من البيانات. دعنا نتعرف على أهمها:
1. النصوص (Strings)
النص هو سلسلة من الحروف محاطة بعلامات اقتباس:
الناتج:
يمكنك استخدام علامات اقتباس مزدوجة " أو مفردة '. الفرق الرئيسي هو أن علامات الاقتباس المزدوجة تدعم الدمج (interpolation) والرموز الخاصة مثل \n للسطر الجديد.
2. الأرقام الصحيحة (Integers)
الأرقام الصحيحة هي أرقام بدون فاصلة عشرية:
الناتج:
لاحظ أن 1_000_000 تساوي مليون - الشرطة السفلية للقراءة فقط ولا تؤثر على القيمة.
3. الأرقام العشرية (Floats)
الأرقام العشرية تحتوي على فاصلة عشرية:
الناتج:
4. القيم المنطقية (Booleans)
القيم المنطقية تمثل الصواب والخطأ - إما true أو false:
الناتج:
هذه القيم مهمة جداًّ في الشروط والقرارات البرمجية.
5. القيمة الفارغة (nil)
nil تعني "لا شيء" أو "فارغ". تُستخدم عندما لا توجد قيمة:
الناتج:
nil.nil? تُرجع true لأن القيمة فارغة!
معرفة نوع البيانات
يمكنك معرفة نوع أي قيمة باستخدام .class:
الناتج:
تغيير قيم المتغيرات
المتغيرات قابلة للتغيير - يمكنك تحديث قيمتها في أي وقت:
الناتج:
اختصارات التحديث
روبي توفر اختصارات لعمليات التحديث الشائعة:
الناتج:
أمثلة عملية
مثال 1: معلومات شخصية
الناتج:
لاحظ استخدام .to_s لتحويل الأرقام والقيم المنطقية إلى نص للدمج!
مثال 2: حساب بسيط
الناتج:
جدول أنواع البيانات
| النوع | الاسم بالإنجليزية | أمثلة | الاستخدام |
|---|---|---|---|
| نص | String | "مرحبا", 'hello' | تخزين النصوص |
| رقم صحيح | Integer | 42, -10, 1_000 | الأعداد الصحيحة |
| رقم عشري | Float | 3.14, -0.5 | الأرقام العشرية |
| منطقي | Boolean | true, false | القرارات والشروط |
| فارغ | NilClass | nil | غياب القيمة |
نصائح مهمة
- اختر أسماء واضحة للمتغيرات -
user_ageأفضل منx - استخدم snake_case -
first_nameوليسfirstName - روبي تكتشف النوع تلقائياً - لا تحتاج لتحديده
- المتغيرات قابلة للتغيير - يمكنك تحديث قيمتها
تمرين: أنشئ متغيرات من أنواع مختلفة
حان وقت التطبيق! في محرر الشيفرة على اليسار:
المطلوب:
- أنشئ متغير نصي باسم
cityيحتوي على "القاهرة" - أنشئ متغير رقمي صحيح باسم
populationيحتوي على 20000000 - أنشئ متغير عشري باسم
areaيحتوي على 3085.1 - أنشئ متغير منطقي باسم
is_capitalيحتوي على true - اطبع كل متغير باستخدام puts
الناتج المتوقع:
تلميح: تذكر أن روبي تكتشف نوع البيانات تلقائياًّ - فقط اكتب القيم مباشرة!
تذكّر: المتغيرات هي أساس كل برنامج - بدونها لا يمكننا تخزين أو معالجة أي بيانات!