Использование джемов
Материалы для подготовки
- Официальный сайт rubygems.org
- Описание структуры джема на rubygems.org
- Список популярных ждемов по категориям ruby-toolbox.com
- Официальный сайт инструмента Bundler bundler.io
- Официальный сайт инструмента Rubocop http://batsov.com/rubocop/
- Руководство по стилю оформления Ruby Ruby Style Guide
- Официальный перевод руководства на русский язык руководства по стилю офомления Ruby Ruby Style Guide
Задачи на поиск и установку библиотек
Цель: научиться искать джемы по названию, использовать инструментарий gem
для просмотра и управлением установленными джемами.
Микро-задачи
- Найдите все библиотеки, в названиях которых есть
json
. - Найдите все библиотеки, в названиях которых есть
xlsx
. - Посмотрите список установленных библиотек.
- Установите библиотеку
write_xlsx
. - Какие джемы помимо
write_xlsx
были установлены в систему? - Удалите джем
write_xlsx
. Были ли удалены все джемы, что были поставлены вместе с ним?
Задачи на исправление собственного исходного кода
Для решения задач вам потребуется иметь решённую практику по созданию собственных классов.
Для каждого приложения выполните следующие задачи.
Исправление структуры приложения
- Скопируйте старый код приложения в новый каталог.
- Исправьте структуру приложения согласно структуре джема.
- Сравните полученный результат с изначальной структурой каталогов.
Важно после исправления структуры каталогов проверьте, что приложение продолжает выполнять свои функции.
Проверка исходного кода с помощью Rubocop
- Создайте файл
Gemfile
в корне проекта. - Добавьте зависимость от джема
Rubocop
. -
Скопируйте в конфигурационный файл
Rubocop
конфигурацию курса:Metrics/AbcSize: # Отключение ABC-проверок Enabled: false Metrics/LineLength: # Длина строк 120 Max: 120 Metrics/MethodLength: # Количество строк кода 15 Max: 15 Style/NegatedIf: # Не форсировать unless Enabled: false
- Проверьте исходный код своего проекта с помощью Rubocop и исправьте его в соответствии с пожеланиями.
Задачи на использование новых джемов
Ввод данных от пользователя с помощью tty-prompt
Внимание данная библиотека не позволяет ввести русские символы под Windows.
- Добавьте в Gemfile вашего проекта зависимость от библиотеки
tty-prompt
. - Добавьте в ваше приложение возможность интерактивного добавления данных от пользователя.
- Для приложения с комплексными числами обеспечьте возможность ввода новых чисел и выполнения операций над известными числами.
- Для приложения с автомобилями обеспечьте ввод данных об автомобилях перед выполнением рассчётов.
При реализации вам необходимо создать только 1 экземпляр объекта TTY::Prompt
.
Отображение информации на изображениях с помощью chunky_png
- Добавьте в Gemfile вашего проекта зависимость от библиотеки
chunky_png
. - Реализуйте следующие функции в ваших приложениях.
- В приложении для работы с комплексными числами обеспечьте формирование файла
map.png
, в котором на плоскости будут отображены точками все известные приложению комплексные числа. - Для приложения с автомобилями постройте гистограмму по потреблению топлива. Результат выведите в виде столбчатой диаграммы в файл
gasoline_gistogram.png
.
- В приложении для работы с комплексными числами обеспечьте формирование файла