Ruby
Что такое Ruby
Ruby – высокоуровневый язык программирования общего назначения, который чаще всего используют в бэкенд-разработке веб-приложений. Ruby ориентирован не на строгий синтаксис, который дает четкие инструкции машинам, а на удобство пользования людьми и скорость разработки.
Если классифицировать Ruby по характерным признакам, этот язык:
- интерпретируемый – код может выполняться на ходу без предварительной компиляции программы;
- объектно-ориентированный – Юкихиро Мацумото, создатель Ruby, был фанатом объектно-ориентированного программирования и хотел добиться максимального комфорта разработчиков при работе с его языком;
- с сильной динамической типизацией – означает, что язык автоматически присваивает тип определенным данным, но проверяет их для корректной работы программы.
Ruby содержит ряд автоматизированных функций, которые сильно упрощают разработку приложений. Язык умеет самостоятельно модифицировать код, удалять неиспользуемый код, а также разбивает процессы на потоки для параллельного выполнения нескольких задач. В жертву удобств для разработчиков пришлось принести скорость выполнения программ. При этом, последние версии Ruby лучше оптимизированы и проходят бенчмарк-тесты с показателями, которые мало отличаются от результатов других сценарных языков.
Где применяют Ruby
Несмотря на то, что Ruby – язык общего назначения, чаще всего его применяют в разработке бизнес-логики веб-приложений. Этому во многом поспособствовал фреймворк Ruby on Rails, который привнес такие технологии, как миграции данных, а также бесшовную интеграцию. Позже эти технологии внедрили другие бэкенд-фреймворки, такие, как Django у языка Python.
Преимущества разработки на Ruby
- быстрая разработка за счет большого количества автоматизированных функций,
- по данным W3Techs, на ноябрь 2022 года Ruby занимает 3 место по популярности среди языков для бэкенд-разработки;
- читаемость языка делают удобной поддержку продуктов даже при привлечении новых разработчиков;
- язык удобен для создания прототипов и MVP;
- многофункциональность языка делают его пригодным для создания любых проектов.
Недостатки разработки на Ruby
- низкая производительность с большими затратами оперативной памяти;
- многоплатформенность языка выполнена на некачественном уровне – некоторые библиотеки не портируются на определенные платформы;
- зачастую отсутствует совместимость с предыдущими версиями языка после обновлений;
- из-за высокопроизводительного интерпретатора язык не получится использовать на маломощных устройствах.
Примеры готовых работ на Ruby
- Сервис аренды жилья AirBnb – airbnb.ru.
- Компания по разработке ПО – basecamp.com.
- Сервис для публикации песен музыкантами – soundcloud.com.
- Сервис для публикации анонимных вопросов – ask.fm.
- Социальная сеть для книголюбов – goodreads.com.