المسارات
/
Ruby
Ruby
/
المنهج
/
متغيرات المثيل
مت

متغيرات المثيل في Ruby

7 تمارين

نبذة عن متغيرات المثيل

النقاط الأساسية:

  • عند استدعاء الطريقة .new الخاصة بالصنف لإنشاء مثيل كائن، تُمرَّر جميع الوسائط إلى الطريقة .initialize لتهيئة حالة المثيل.
  • تُسبق أسماء متغيرات المثيل بعلامة @.
  • تكون متغيرات المثيل nil افتراضيًا حتى يتم إسناد قيمة لها صراحةً.
  • متغيرات المثيل خاصة افتراضيًا، وينبغي التعامل معها عبر دوال الجلب ودوال الإسناد.
class Backpack
  initialize(owner)
    @owner = owner
  end

  def owner
    @owner
  end

  def owner=(new_owner)
    @owner = new_owner
  end
end
  • الطرق التي ينتهي اسمها بـ = يعتبرها Ruby طرق إسناد، وتسمح باستخدام صيغة الإسناد على نحو «السكر النحوي»، مثل Backpack.new("Sven").owner = "Ayah". لاحظ الفراغ بين owner و = بينما اسم الطريقة الفعلي هو owner=.
  • يمكن إنشاء دوال الجلب ودوال الإسناد باستخدام الطرق attr_reader وattr_writer وattr_accessor:
    • attr_reader: إنشاء دوال جلب للرموز المذكورة.
    • attr_writer: إنشاء دوال إسناد للرموز المذكورة.
    • attr_accessor: إنشاء دوال جلب وإسناد للرموز المذكورة.
class Backpack
  attr_accessor :owner

  initialize(owner)
    @owner = owner
  end
end
  • لماذا نستخدم دوال الجلب ودوال الإسناد بدلًا من متغير المثيل مباشرةً؟
    • لو وقع خطأ مطبعي (وهو ما نسميه «typo») في المثال السابق (مثل @ownar)، لفشل ذلك بصمت، وقد يُدخل bug في النظام.
    • أما دوال الجلب ودوال الإسناد فتجعل ذلك صريحًا، وستُطلق خطأً عند وقوع خطأ مطبعي.

المراجع

تهيئة مثيلات الكائنات

متغيرات المثيل

تعديل عبر GitHub يفتح الرابط في نافذة أو علامة تبويب جديدة

تعلّم متغيرات المثيل

التدريب مقفل

افتح 5 تمارين إضافية لممارسة متغيرات المثيل