ورقة غش لغة البرمجة روبي (Ruby)
روبي هي لغة برمجة ديناميكية ومفتوحة المصدر وكائنية التوجه تركز على البساطة والإنتاجية. تتميز ببناء جملة أنيق يسهل قراءته وكتابته.
الأساسيات
Common Objects
- السلاسل النصية:
"hello",'world' - الرموز (Symbols):
:id,:name(فريدة وغير قابلة للتغيير) - الأرقام:
10,3.14 - المصفوفات:
[1, 2, 3] - الهاش (Hashes):
{ key: "value" }
Variables
# أنواع المتغيرات
name = "Ruby" # محلي
@name = "Ruby" # مثيل (Instance)
@@name = "Ruby" # فئة (Class)
$name = "Ruby" # عالمي
NAME = "Ruby" # ثابتتدفق التحكم
Conditionals
# الشرط
if age > 18
puts "Adult"
elsif age > 12
puts "Teen"
else
puts "Child"
end
# شرط في سطر واحد
puts "Hi" if conditionLoops
3.times { puts "Hello" }
[1, 2, 3].each do |i|
puts i
endالطرق والفئات (Classes)
// تعريف الطريقة
def greet(name = "Guest")
"Hello, #{name}!"
end
// تعريف الفئة
class Animal
attr_accessor :name # توليد getter/setter تلقائياً
def initialize(name)
@name = name
end
def speak
"..."
end
endعمليات Enumerable
| الطريقة | الوصف | مثال |
|---|---|---|
each |
تكرار عبر كل عنصر | `[1,2].each { |
map |
تحويل كل عنصر وإرجاع مصفوفة جديدة | `[1,2].map { |
select |
تصفية العناصر المطابقة للشرط | `[1,2,3].select { |
reject |
تصفية العناصر غير المطابقة للشرط | `[1,2,3].reject { |
reduce |
تقليص المصفوفة إلى قيمة واحدة | [1,2,3].reduce(0, :+) |
الطرق المدمجة الشائعة
p object: طباعة الكائن (مع معلومات النوع)puts object: إخراج الكائن مع سطر جديدgets: الحصول على مدخلات المستخدم.nil?: التحقق مما إذا كان nil.empty?: التحقق مما إذا كانت المجموعة فارغة
الأوامر الشائعة (CLI)
ruby main.rb: تشغيل السكريبتirb: وحدة تحكم روبي التفاعليةgem install <name>: تثبيت حزمة gembundle install: تثبيت تبعيات المشروعrake <task>: تنفيذ مهمة (task)