Ruby on Rails

Гемы – лучшие друзья разработчика

Алексей Б. 12 мая 2016

 

Ruby on Rails – один из самых популярных фреймворков, использующихся в веб пространстве. Он бесплатный, удобен в разработке, и подходит для быстрого написания кода. Более того, существует огромное сообщество разработчиков, которые всегда готовы помочь и поделиться своими идеями. Разработчики со всего мира вносят что-то новое в данный фреймворк, делая его еще разнообразнее и популярнее. В результате фреймворк может похвастаться большим числом полезных гемов, которые помогают решить различные проблемы на практике. Хотелось бы Вам иметь простой REST фреймворк? Обязательно ли устанавливать веб сервер? Отправлять имейлы? Гемы помогут Вам решить эти и другие задачи.

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

Приведем примеры тех гемов, которые зарекомендовали себя с лучшей стороны.

Devise

Один из наиболее популярных гемов на Ruby on Rails. Он решает проблемы аутентификации. Данный гем позволяет управлять такими опциями как: логин, регистрация, забытый пароль, блокировка аккаунта, подтверждение по электронной почте и многими другими.

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

Pundit

Он чем-то похож на Devise. Однако, Pundit отвечает за авторизацию (ограниченные ресурсы, доступные для пользователя). Данный гем покрывает весь процесс с помощью определения авторизационных систем, используя классы на Ruby.

RSpec

Полезный гем для тестирования с использованием BDD. Это один из самых первых гемов: он был создан как эксперимент в 2005 году. Сейчас же сотни разработчиков вносят свои правки, чтобы улучшить данный гем.

CarrierWave

Это простой и удобный гем, который позволяет загружать файлы из приложений на Ruby. CarrierWave используется в Ruby on Rails, Sinatra и других Ruby фреймворках.

Sidekiq

Sidekiq – один из самых популярных фоновых процессоров. У него простой API и хорошая возможность добавления.

RuboCop

Это анализатор кода, основанный на Ruby Style Guide. Он способен не только находить ошибки в коде, но также и исправлять их.

Reek

Это удобный гем, который проверяет классы на Ruby, а также методы и модули. Если в коде будет что-то не так, Reek сообщит вам об этом.

Draper

Гем позволяет создать обертку над моделью, поэтому нет необходимости писать помощников. Также предоставляется список необходимых методов и атрибутов для вашего объекта.

Mina

Быстрый инструмент для внедрения и автоматизации сервера. У него всего одна SSH связь для внедрения, что позволяет достичь более быстрых результатов.

Kaminari

Один из самых популярных гемов. Kaminari позволяет разбивать на страницы данные от ActiveRecord (обертка работы с БД) до простых массивов.

Virtus

Этот гем определяет атрибуты для модулей, классов и классовых инстансов с дополнительной информацией о типах. Он может использоваться, чтобы подготовить доступ к данным  в Value Objects и др. 

Js Routes

Он создает javascript файл, который обозначает все Rails маршруты как javascript помощников.

MailCatcher

Это простой SMTP сервер, который получает любое сообщение и отображает его в веб интерфейсе.

Pry-Rails

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

Существует множество различных гемов, использующихся в вебе. Каждый нацелен на решение определенных задач. Используйте данные гемы, и они помогут вам быстрее решать необходимые задачи.

Алексей Б.

Алексей Б.

Менеджер проектов в iKantam

Почитать другие посты