Возможно, Ruby on Rails  —  не оптимальный выбор для приложений масштаба Google. Но для задач масштаба GitHub и менее Rails идеален.

Изначально в команде eXp-Realty было всего два разработчика, но им удавалось создавать и активно сопровождать около десяти проектов. Сегодня разработчиков уже шесть. Сопровождаемые проекты со временем тоже увеличились: хотя некоторые прекращены, новых появилось больше. Мы продолжаем супероперативно помогать партнерам, эффективно устраняя проблемы на пути роста бизнеса, постоянно рефакторим и обновляем приложения, сокращая технические недоработки и вырываясь вперед.

И все это благодаря Ruby on Rails.

Нуждается ли Rails в представлении? Созданный в 2004 году, этот проверенный временем фреймворк построен на языке Ruby. С годами он превратился в незаменимый инструмент многих разработчиков и индустрий ПО по всему миру. А для стартапов он как швейцарский армейский нож.

Чем объясняется такая эффективность Rails, способность достигать вышеперечисленное?

Ruby  —  простой, удобный и очень понятный язык. Даже тем, кто не знаком с ним, очевидно происходящее в методе  —  благодаря воспринимаемому человеком синтаксису.

# Определение строк
greeting = "Hello"
name = "Ben"

# Конкатенация
message = greeting + ", " + name + "!"
puts message # Вывод: Hello, Ben!

# Интерполяция
message = "#{greeting}, #{name}!"
puts message # Вывод: Hello, Ben!

# Изменение регистра
puts greeting.upcase # Вывод: HELLO
puts name.downcase # Вывод: ben
puts name.capitalize # Вывод: Ben

# Разбиение строки на массив
array = message.split(',')
puts array.inspect # Вывод: ["Hello", " Ben!"]

Ruby on Rails появился как ответ на конкретный вопрос: «Как создать надежное веб-приложение быстро?» С Ruby, как отличным инструментом для веб-разработчиков, эта проблема решилась.

Невозможно не сказать и о сообществе Rails  —  всех этих увлеченных людях, которые участвуют в развитии инструментов, добавляют функционал, пишут документацию, устраняют баги. При использовании Rails отрадно осознавать, что сотни блестящих программистов усердно трудились над всеми пограничными случаями, постоянно стремились совершенствовать процесс разработки на этом фреймворке, безопасность и производительность.

Как не упомянуть и о библиотеках Ruby? Ими быстро подключается код других программистов для доработки приложения готовым функционалом  —  от пользовательского интерфейса до аутентификации и авторизации. Это еще одна причина удивительной способности Rails ускорять разработку.

Благодаря знаменитой философии Ruby on Rails  —  соглашения по конфигурации и так называемого Rails way  —  перейти к любому имеющемуся проекту здесь не проблема. Какая бы ни была кодовая база, вы знаете, чего ожидать и где все найти. Структура последовательна, с преобладанием шаблонов. Благодаря MVC упрощаются поиск моделей, проверка маршрутов, просмотр контроллеров. Все на своих местах.

Недавно в сообществе Rails официально перешли на Docker, с ним локальная разработка и релизы еще проще.

Структура проекта Ruby on Rails

Но Rails вовсе не закрытая экосистема, а на самом деле очень гибкая и открытая: сюда легко включаются различные идеи и технологии. Kafka, RabbitMQ, GraphQL, Elasticsearch или MongoDB  —  приветствуются все эти и многие другие решения. Подобные сервисы, если они необходимы для решения той или иной проблемы, легко добавляются с Rails.

И последнее  —  приложения на Ruby on Rails создаются бесплатно. Казалось бы, очевидно. Но об этом все же стоит упомянуть из-за появления дорогих альтернатив, где мало кода или его нет совсем. Подумайте только, сколько денег вы сэкономите для своей компании на одном этом.

Читайте также:

Читайте нас в Telegram, VK и Дзен


Перевод статьи Michal Korzawski: Why we use Ruby on Rails and (probably) why you should too

Предыдущая статьяВопросы для собеседования по Android: как обрабатывать валидацию ввода в Jetpack Compose?
Следующая статьяИнструменты с открытым исходным кодом, популярные на GitHub