Ruby — це мова програмування, яка підходить для початківців і має велику потужність завдяки своїй простоті та зрозумілості. Якщо ви тільки починаєте, розуміння базового синтаксису та типів даних — це перший крок. Давайте заглибимося в основи Ruby!
1. Змінні: Зберігання даних
У Ruby вам не потрібно вказувати тип даних при оголошенні змінної — він визначається динамічно.
name = "Alice" # String
age = 25 # Integer
height = 5.8 # Float
is_student = true # Boolean
Ключові моменти:
- Змінні не потребують явного оголошення типу.
- Ruby використовує
snake_case
для імен змінних. - Булеві значення (
true
,false
) представляють логічні значення.
2. Рядки: Робота з текстом
Рядки використовуються для зберігання текстових даних і можуть бути обгорнуті в подвійні ("
) або одинарні ('
) лапки.
str1 = "Hello"
str2 = 'World'
puts str1 + " " + str2 # Конкатенація → "Hello World"
puts "#{str1} #{str2}" # Інтерполяція → "Hello World"
puts str1.upcase # "HELLO"
puts str2.downcase # "world"
Ключові моменти:
+
об'єднує два рядки.#{}
використовується для інтерполяції рядків всередині подвійних лапок..upcase
та.downcase
змінюють регістр літер.
3. Числа: Цілі числа та числа з плаваючою точкою
x = 10 # Integer
y = 3.5 # Float
puts x + y # 13.5
puts x - y # 6.5
puts x * y # 35.0
puts x / y # 2.857142857142857
puts x % 3 # 1 (Модуль)
puts x**2 # 100 (Степінь)
Ключові моменти:
- Арифметичні операції працюють, як очікується.
%
дає залишок від ділення (модуль).**
використовується для піднесення до степеня.
4. Масиви: Зберігання кількох значень
Масиви зберігають упорядковані списки значень і можуть зберігати різні типи даних.
arr = [1, 2, 3, "Ruby", true]
puts arr[0] # 1 (Перший елемент)
puts arr[-1] # true (Останній елемент)
arr << 4 # Додаємо 4 → [1, 2, 3, "Ruby", true, 4]
arr.push(5) # Інший спосіб додавання → [1, 2, 3, "Ruby", true, 4, 5]
arr.pop # Видаляє останній елемент → [1, 2, 3, "Ruby", true, 4]
Ключові моменти:
- Масиви використовують індексацію з нуля (
arr[0]
— це перший елемент). <<
або.push
додають елементи,.pop
видаляє останній елемент.
5. Хеші: Зберігання пар ключ-значення
Хеші зберігають дані у вигляді пар ключ-значення, подібно до словників у Python.
person = { name: "Alice", age: 25, city: "New York" }
puts person[:name] # Alice
puts person[:age] # 25
person[:gender] = "Female" # Додаємо нову пару ключ-значення
puts person # {:name=>"Alice", :age=>25, :city=>"New York", :gender=>"Female"}
Ключові моменти:
- Ключі хешів зазвичай є символами (
:key
), що є більш ефективними за рядки. - Для доступу до значень використовуйте
hash[:key]
.
6. Умовні конструкції: Прийняття рішень
Умовні оператори керують потоком програми на основі умов.
age = 18
if age >= 18
puts "Adult"
elsif age > 12
puts "Teenager"
else
puts "Child"
end
Ключові моменти:
if
,elsif
таelse
використовуються для прийняття рішень.- Ruby використовує відступи для читабельності, але це не є обов'язковим.
7. Цикли: Повторення дій
Цикл while
i = 1
while i <= 5
puts i
i += 1
end
Цикл for
for num in [1, 2, 3, 4, 5]
puts num
end
Цикл each (для масивів та хешів)
[10, 20, 30].each { |n| puts n }
person.each { |key, value| puts "#{key}: #{value}" }
Ключові моменти:
while
виконується до тих пір, поки умова не стане хибною.for
ітерує по колекціях..each
— це найкращий спосіб пройти через масиви та хеші.
8. Методи: Переносні блоки коду
Методи дозволяють писати повторно використовуваний код.
def greet(name)
return "Hello, #{name}!"
end
puts greet("Alice") # "Hello, Alice!"
Ключові моменти:
- Методи оголошуються за допомогою
def method_name
. return
є необов'язковим (Ruby повертає останній обчислений вираз).
## Символи: Легковагі ідентифікатори
Символи (:symbol
) незмінні та ефективніші за рядки при використанні їх як ключів.
sym = :ruby
puts sym.object_id # Символи мають унікальний ID
puts :ruby.object_id == :ruby.object_id # true
Ключові моменти:
- Символи часто використовуються як ключі в хешах.
- На відміну від рядків, той самий символ завжди має однаковий ID об'єкта.
10. Діапазони: Послідовності чисел
Діапазони представляють собою послідовності чисел і можуть бути перетворені на масиви.
puts (1..5).to_a # [1, 2, 3, 4, 5]
puts (1...5).to_a # [1, 2, 3, 4] (Виключає 5)
Ключові моменти:
1..5
включає 5, тоді як1…5
виключає його.- Діапазони корисні в циклах і умовах.
Синтаксис Ruby чистий та легкий для розуміння, що робить її чудовою мовою для початківців. Розуміння змінних, типів даних, циклів і умов дає міцну основу для написання ефективних програм на Ruby.
Удачі в кодуванні! 🚀
Перекладено з: Getting Started with Ruby: Basic Syntax and Data Types