Ruby — мощный скриптовый язык программирования, который создавался с целью сделать программирование максимально «человечным». В этом языке очень много идиоматики, то есть принципов, как делать те или иные штуки: правильно и в стиле Ruby Way. Это очень похоже на Python с его Pythonic, но Ruby Way местами идёт в противоположную сторону. В этом месте программисты делятся на два лагеря. Одним Ruby Way приходится по душе, другие же его не принимают.
Ruby создавался таким, чтобы одну и ту же задачу можно было сделать большим количеством способов. Например, у многих методов существуют алиасы, которые не добавляют новой функциональности — они просто существуют для логичности (стройности) языка. Пример из Rails: 1.day + 5.days
. У обоих операндов вызывается один и тот же метод, но у него разные названия — для того, чтобы можно было легко прочесть написанное.
Ruby, благодаря лаконичному синтаксису с минимумом шума и наличию блоков, позволяет создавать DSL буквально под каждую задачу, чем программисты с удовольствием пользуются. Это одна из причин, почему язык стал популярен в DevOps-среде, где было создано множество инструментов, написанных на Ruby (Chef, Puppet и другие).
# Вроде бы просто роутинг, но он не выглядит как код
Rails.application.routes.draw do
root to: "pages#main"
resources :posts do
get :preview
resources :comments, only: [:new, :create, :destroy]
end
end
Hello, World!
По традиции начнем с написания программы 'Hello, World!'. Эта программа будет выводить на экран текст:
# В конце инструкции нет символа ;
# В Ruby не ставятся ; практически никогда
puts 'Hello, World!'
puts()
— функция печати на экран. В Ruby функции могут вызываться как со скобками, так и без них — разница только в способе записи. Код выше можно было бы записать так:
puts('Hello, World!')
Решение о том, ставить скобки или нет, зависит от предпочтений программиста и удобства в каждой конкретной ситуации. Это понимание придёт со временем.
Дополнительные материалы
Остались вопросы? Задайте их в разделе «Обсуждение»
Вам ответят команда поддержки Хекслета или другие студенты
Для полного доступа к курсу нужен базовый план
Базовый план откроет полный доступ ко всем курсам, упражнениям и урокам Хекслета, проектам и пожизненный доступ к теории пройденных уроков. Подписку можно отменить в любой момент.