نوع البيانات Symbol
جزء من قسم الأساسيات في رحلة Ruby على Coddy — الدرس 7 من 88.
في لغة Ruby، تُعد الرموز (symbols) نوع بيانات فريدًا يمثل معرفات غير قابلة للتغيير. يتم إنشاء الرمز عن طريق وضع نقطتين رأسيتين : قبل الاسم. وعلى عكس السلاسل النصية (strings)، فإن الرموز التي لها نفس الاسم تشير دائمًا إلى نفس الكائن في الذاكرة، مما يجعلها أكثر كفاءة من حيث استهلاك الذاكرة.
يتبع إنشاء متغير رمز (symbol) هذا النمط:
status = :active
color = :red
role = :adminتبدو الرموز (Symbols) مشابهة للسلاسل النصية (strings) ولكنها تخدم غرضاً مختلفاً. فبينما تُستخدم السلاسل النصية للنصوص التي قد تتغير أو يتم التلاعب بها، تُستخدم الرموز للمعرفات، والتسميات، والمفاتيح التي تظل ثابتة. وهي تُستخدم بشكل شائع كمفاتيح تجزئة (hash keys) ولتمثيل الحالات أو الفئات.
أمثلة على الرموز (symbols) في Ruby:
status = :pending # يمثل حالة
day = :monday # يمثل يوماً
mode = :dark_mode # يمثل إعداداًالتحدي
سهلقم بإنشاء ثلاثة متغيرات من نوع symbol لتمثيل حالات المهام المختلفة. أولاً، قم بإنشاء متغير يسمى current_state وقم بتعيين الرمز :active له. ثم قم بإنشاء متغير يسمى next_state وقم بتعيين الرمز :pending له. أخيراً، قم بإنشاء متغير يسمى final_state وقم بتعيين الرمز :completed له. قم بعرض المتغيرات الثلاثة جميعها باستخدام الأمر puts.
ورقة مرجعية
في لغة روبي (Ruby)، تُعد الرموز (symbols) معرفات غير قابلة للتغيير يتم إنشاؤها عن طريق وضع نقطتين رأسيتين : قبل الاسم. وهي فعالة من حيث استهلاك الذاكرة لأن الرموز التي لها نفس الاسم تشير إلى نفس الكائن في الذاكرة.
إنشاء متغيرات الرموز:
status = :active
color = :red
role = :adminتُستخدم الرموز للمعرفات، والتسميات، والمفاتيح التي تظل ثابتة، مثل مفاتيح الـ hash، أو الحالات، أو الفئات:
status = :pending # يمثل حالة
day = :monday # يمثل يوماً
mode = :dark_mode # يمثل إعداداًجرّب بنفسك
# TODO: اكتب كودك هنا
# قم بإنشاء متغيرات الرموز الثلاثة واعرضها باستخدام putsيتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
4المعاملات - الجزء الثاني
المعاملات المنطقية - الجزء الأولالمعاملات المنطقية - الجزء الثانيمراجعة - المنطق البسيطالمعاملات المنطقية - الجزء الثالثالمعاملات المنطقية - الجزء الرابع7حاسبة تقسيم الفاتورة
رسالة الترحيبالحصول على مدخلات المستخدم2المتغيرات وأنواع البيانات
الأرقام والمتغيراتنوع البيانات Stringنوع البيانات Booleanنوع البيانات Symbolالتحقق من أنواع البياناتقواعد التسميةملخص - إنشاء المتغيرات8الحلقات التكرارية
حلقة For مع النطاقاتحلقة WhileBreakNextمراجعة - المضروب (Factorial)حلقة Timesحلقة Untilالحلقات المتداخلةمراجعة - الإدخال الديناميكي (Dynamic Input)3المعاملات - الجزء الأول
المعاملات الحسابيةمعامل باقي القسمةاختصارات العمليات الحسابيةمراجعة - العمليات الرياضية البسيطةمعاملات المقارنة6أساسيات الإدخال والإخراج
الإخراج باستخدام putsالإخراج باستخدام print و pالإخراج باستخدام المتغيراتالإدخال باستخدام getsدالة Chompتحويل أنواع البياناتمراجعة - حاسبة العمرمراجعة - صح أم خطأ