Ruby:
Організація коду в функції
Як:
Уявіть, що ви пишете швидкий скрипт для привітання користувачів:
def greet(name)
"Привіт, #{name}!"
end
puts greet("Аліса") # Вивід: Привіт, Аліса!
puts greet("Боб") # Вивід: Привіт, Боб!
Або, можливо, ви розраховуєте площу кола:
def circle_area(radius)
Math::PI * radius ** 2
end
puts circle_area(5) # Вивід: 78.53981633974483
Акуратніше і легше в обігу, правда?
Поглиблено
Концепція функцій, відомих також як методів у Ruby, не нова—вона стара як програмування саме по собі. Повернувшись до 1950-их, були введені підпрограми, як їх тоді називали, щоб зменшити повторення.
Альтернативи? Звісно, у вас є вбудований код, ви можете використовувати ООП з класами та об’єктами, або навіть функціональне програмування з лямбдами та процами. Але функції є основою організованого коду. Хочете продуктивності? Локальні змінні в функціях швидкі, і функції можуть негайно повертати значення за допомогою return
.
Що стосується реалізації, ви можете визначити функцію за допомогою def
і закінчити її з end
. Ви можете встановити параметри за замовчуванням, використовувати оператори splat для варіативних функцій і більше. Функції можуть бути настільки простими або складними, наскільки це бажає ваше серце.