Бібліотеки

Як і більшість мов програмування, Ruby використовує широкий набір сторонніх бібліотек.

Майже всі ці бібліотеки випускаються у вигляді gem — упакованої бібліотеки або застосунку, який можна встановити за допомогою інструмента RubyGems.

RubyGems — це система пакування Ruby, створена для полегшення створення, обміну та встановлення бібліотек (у певному сенсі це система пакування дистрибутивів, подібна до apt-get, але орієнтована на Ruby). Ruby постачається з RubyGems за замовчуванням, починаючи з версії 1.9, а для попередніх версій RubyGems потрібно встановлювати вручну.

Деякі інші бібліотеки поширюються у вигляді архівів (.zip або .tar.gz) з вихідним кодом. Процеси встановлення можуть відрізнятися, зазвичай у файлі README або INSTALL є інструкції.

Розгляньмо, як знаходити бібліотеки та встановлювати їх для власного використання.

Пошук бібліотек

Основне місце розміщення бібліотек — RubyGems.org, публічний репозиторій gem-ів, у якому можна шукати та встановлювати пакунки на свою машину. Ви можете переглядати й шукати gem-и через вебсайт RubyGems або використовувати команду gem.

За допомогою gem search -r можна здійснювати пошук у репозиторії RubyGems. Наприклад, gem search -r rails поверне список gem-ів, пов’язаних із Rails. Опція --local (-l) виконує локальний пошук серед встановлених gem-ів. Для встановлення gem-а використовуйте gem install [gem]. Переглянути встановлені gem-и можна командою gem list. Докладніше про команду gem — нижче або в документації RubyGems.

Є й інші джерела бібліотек. GitHub — основний репозиторій Ruby-орієнтованого контенту. Зазвичай вихідний код gem-а розміщується на GitHub, а повноцінний реліз публікується на RubyGems.org.

The Ruby Toolbox — це проєкт, який спрощує огляд відкритих Ruby-проєктів. Він має категорії для різних типових завдань розробки, збирає багато інформації про проєкти (наприклад, активність релізів і комітів або залежності) та оцінює їхню популярність на RubyGems.org і GitHub. Це допомагає легко знаходити gem, що розв’язує конкретну задачу, наприклад вебфреймворки, інструменти документації та бібліотеки якості коду.

Кілька слів про RubyGems

Ось короткий огляд команди gem для щоденного використання. Детальніша документація охоплює всі аспекти цієї системи пакування.

Пошук серед доступних gem-ів

Команда search використовується для пошуку gem-ів за рядком. У відповідь буде показано gem-и, назви яких починаються із заданого рядка. Наприклад, для пошуку gem-ів, пов’язаних із “html”:

$ gem search -r html

*** REMOTE GEMS ***

html-sample (1.0, 1.1)

Прапорець --remote / -r означає, що ми переглядаємо офіційний репозиторій RubyGems.org (поведінка за замовчуванням). З прапорцем --local / -l ви виконаєте локальний пошук серед встановлених gem-ів.

Встановлення gem-а

Коли ви знаєте, який gem хочете встановити, наприклад популярний фреймворк Ruby on Rails:

$ gem install rails

Ви також можете встановити конкретну версію бібліотеки, використавши прапорець --version / -v:

$ gem install rails --version 5.0

Список усіх gem-ів

Для списку всіх локально встановлених gem-ів:

$ gem list

Щоб отримати (дуже довгий) список усіх gem-ів, доступних на RubyGems.org:

$ gem list -r

Довідка

Документація доступна у вашому терміналі:

$ gem help

Наприклад, gem help commands дуже корисна, оскільки виводить список усіх команд gem.

Створення власних gem-ів

RubyGems.org має кілька посібників на цю тему. Також варто звернути увагу на Bundler — універсальний інструмент, що допомагає керувати залежностями застосунку та може використовуватися разом із RubyGems.