مرجع سريع

ورقة غش ميزات Ruby 2.1

دليل مرجعي تاريخي لأهم ميزات لغة Ruby 2.1: المعاملات المسماة الإلزامية، إرجاع الرموز من def، وتحسينات الأعداد الكسرية.

· تاريخ النشر

قدمت Ruby 2.1 تحسينات لغوية فارقة، بما في ذلك المعاملات المسماة المطلوبة (required keyword arguments) وإرجاع def لرمز اسم الدالة.

المعاملات المسماة المطلوبة (Required Keyword Arguments)

تصبح المعاملات المسماة التي لا تحتوي على قيمة افتراضية مطلوبة بشكل إلزامي:

# length مطلوب؛ char يأخذ القيمة الافتراضية '0'
def pad(number, length:, char: "0")
  number.to_s.rjust(length, char)
end

pad(42, length: 6) # => "000042"
pad(42)            # ArgumentError: missing keyword: :length

تعريف الدوال يرجع رمز اسم الدالة (Symbols)

في Ruby 2.1+، ترجع دالة def اسم الطريقة كـ Symbol، مما يتيح التعديل المباشر في نفس السطر:

class User
  # تحويل الدالة إلى private في نفس السطر
  private def secret_token
    "secret"
  end

  # التسلسل مع مزخرفات الوحدات (Decorators)
  memoize def expensive_computation
    sleep 2
    42
  end
end

تحسينات الأرقام والتمثيل النصي

# لاحقة الأعداد الكسرية 'r'
2/3r # => (2/3)

# لاحقة الأعداد المركبة 'i'
3 + 4i # => (3+4i)

# تجميد السلاسل النصية للتحسين: 'freeze'
"constant_string".freeze

مراجع

موضوعات ذات صلة