На просторах Рунета можно встретить два полярных мнения: новый язык Ruby стоит изучать обязательно, и старый, никому не нужный язык Ruby скоро умрет. Истина, как водится, где-то посередине.
Ruby был создан Юкихиро Мацумото в 1995 году, поэтому отнести его к молодым языкам можно лишь условно и только в сравнении с настоящими динозаврами программирования, которые еще живы и используются даже не второе десятилетие подряд. Популяризацию и развитие языка затормозил доступный только на японском мануал. С появлением англоязычной версии распространение Ruby в мире значительно ускорилось.
Юкихиро Мацумото хотел создать язык, более мощный чем Perl и более объектно-ориентированный чем Python. Он планировал, что Ruby подойдет для решения простых и понятных задач, в которых на первый план выйдут простота и скорость разработки. Это одна из причин, почему Ruby так популярен у стартаперов.
Основные характеристики Ruby:
Язык общего назначения Ruby не используется в специфичных областях, зато незаменим в стартапах и веб-разработке. Динамичный. Скорость разработки возрастает за счет определения типов данных на этапе выполнения программы. Высокоуровневый. Язык использует конструкции человеческого языка и сильную абстракцию. Интерпретируемый. Независимость от платформ и меньший размер программы обеспечивается обработкой исходного текста интерпретатором в процессе выполнения без предварительной компиляции. Предсказуемый. Язык создан по принципу наименьшего удивления, т.е. ведет он себя именно так, как ожидает программист. Лаконичный. В понимании Мацумото Ruby создавался, «чтобы сделать программистов счастливыми». Увеличить популярность языка и определить его нишу помог появившийся в 2005 году фреймворк Ruby on Rails – популярный инструмент веб-разработки, который принес Ruby всемирную известность.
Ниже рассмотрим причины, по которым стоит изучить Ruby в 2021 году.
Причина 1: популярность Ruby растет По данным индекса TIOBE на май 2021 года, Ruby занимает 11-ю строчку популярности, а год назад был на 15-й. TIOBE рассчитывает популярность языка на основе поисковых запросов. Если рассматривать рейтинги фреймворков, например, сервис Hotframeworks, то Ruby on Rails входит в пятерку самых популярных.
Причина 2: удобство для веб-разработки Благодаря развитому фреймворку Ruby on Rails, а также характеристике «язык общего назначения», Ruby уверенно занял нишу веб-разработки. В Ruby on Rails реализована бесшовная интеграция с базами данных, а также используется архитектура MVC и известные инженерные паттерны (DRY, ActiveRecord и convention over configuration – соглашение по конфигурации).
Одним из главных плюсов фреймворка является высокая степень защиты данных. Все входные параметры экранируются по умолчанию: шифруются пароли, сведения о кредитных картах, личная информация пользователей.
Причина 3: востребованность специалистов В мае 2021 года по запросу Ruby портал hh.ru выдает более 1100 вакансий и практически в каждой указан Ruby on Rails.
Только малая часть вакансий идет с пометкой «Начало карьеры», т.е. порог входа довольно высок. В то же время вилка зарплат разработчика Ruby находится в районе 120+ тыс. рублей.
Вывод: решившись на изучение Ruby сегодня, нужно быть готовым к конкуренции и хорошим перспективам впоследствии.
Ruby on Rails популярен в Европе и США, поэтому если вы планируете переезд и смотрите на запад – это отличный вариант. Один из разработчиков RoR, Дэвид Хайнемайер Ханссон, поддерживает идею удаленной и комфортной работы, что отразилось на фреймворке и использовании Ruby в целом.
Причина 4: красивый и лаконичный синтаксис Многие называют Ruby элегантным, что легко подтверждается программным кодом. Его создатели постарались взять лучшее от других языков: исключения, перезагрузку операторов, интерактивную консоль. Ruby не использует точку с запятой – новая линия разделяет инструкции, как и в Python. В Ruby нет множественного наследования (как в С++), зато оно не приводит к непредсказуемым последствиям.
Причина 5: простота изучения Хоть на Ruby-джунов спрос и невысок, сам язык – один из наиболее простых для освоения. В открытом доступе есть множество информационных ресурсов для обучения, а также существует довольно большое и дружелюбное коммьюнити. При этом на Ruby легко изучить объектно-ориентированное программирование и здесь проще читается код.
Высокая мотивация и возможность релокации для работы с западными компаниями делают профессиональную среду довольно сильной, но в то же время, если правильно определить путь развития, можно быстро стать дорогим специалистом. Сама суть Ruby в том, чтобы сосредоточиться на бизнес-логике продукта, а не сложности и технике языка.
Как начать? Если пять причин показались вам убедительными, обратите внимание и на наши советы по знакомству с этим замечательным языком:
Изучите английский. Самый популярный совет в программировании, который поможет выйти на международный профессиональный рынок. С Ruby этот совет становится особенно актуальным. Посмотрите нашу подборку материалов о Ruby. Прочтите книги : «Путь Ruby», Хэл Фултон и Андрэ Арко; «Head First. Изучаем Ruby», Джей Макгаврен; «Самоучитель Ruby», Игорь Симдянов; «Ruby. Объектно-ориентированное проектирование», Сэнди Метц; «Ruby on Rails для начинающих. Изучаем разработку веб-приложений на основе Rails», Майкл Хартл; «Путь Rails», Оби Фернандес.
Воспользуйтесь интернет-ресурсами: Ruby – лучший друг программиста; Codeacademy; Тесты на знание Ruby. Бесплатный курс по Ruby, чтобы попробовать и познакомиться от Goodprogrammer; Подборка бесплатных уроков по Ruby; Введение в Ruby от Hexlet; Факультет Ruby on Rails от GeekBrains с гарантированным трудоустройством по итогу обучения. ***
Изучать или не изучать – решать только вам. Есть более мощные языки, есть языки более перспективные, но если вас привлекает удобство и эффективность, Ruby и Ruby on Rails – отличный выбор, чтобы начать заниматься веб-разработкой. Их неоспоримое достоинство в том, что буквально пара человек может заменить целый штат программистов и за несколько месяцев создать прототип – это значительно сэкономит время, если вы соберетесь запускать собственный проект.
Легкий, удобный, дружелюбный и профессиональный – Ruby поможет вам стать классным профессионалом. Удачи в обучении!