Ежедневно, с 8:30 до 22:30
Предзаказ
1176

Метапрограммирование на Ruby

Средняя оценка 5.0 из 5 на основании 1 голосов 5.0 (1)
0 0
0
Автор:
1500 ₽
4900 ₽
-69%
Кэшбэк: 5% (75 ₽)
Курс будет выдан в течение 1-3 часов после оплаты.

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

Программа курса

День 1. Метапрограммирование в Ruby и не только

Рассмотрим само понятие «метапрограммирование» в примерах на разных языках. Повторим наиболее распространенные техники и методы.

  • Сравним метапрограммирование в разных языках
  • Разберем базовые приемы метапрограммирования в Ruby:
    • method declarations (define_method & def)
    • code execution (eval & exec)
    • variable access (instance_variable_get/set, const_get/set)
    • class & module callbacks (included & extended)
  • Обсудим принципы применения метапрограммирования
  • Создадим небольшую библиотеку с DSL

В результате вы сможете:

Научиться использовать основной набор средств метапрограммирования в Ruby. Закрепить полученные сведения в небольшой библиотеке с самописным DSL в качестве домашнего задания.

День 2. Динамический Ruby

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

  • Рассмотрим разницу ключевых слов и методов на примерах:
    • def vs define_method
    • class/module vs Class.new/Module.new
  • Изучим способы создания «чистого» DSL
  • Применим объект binding на практике
  • Научимся создавать подклассы встроенных типов и разберем ситуации, когда это может быть полезно

В результате вы сможете:

Научиться динамически создавать расширения для классов и объектов из набора опций и параметров. Закрепить новые знания на практике путем улучшения API библиотеки из первой домашней работы.

День 3. Метапрограммирование в реальных проектах

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

  • Рассмотрим внутренности Ruby on Rails, Dry.rb, Rspec
  • Разберемся в нюансах вещей, оставшихся в стороне предыдущих тем:
    • Использование method_missing
    • method_added callback
    • Связь методов initialize и new
  • Подведем итоги по вопросам применения метапрограммирования

В результате вы:

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

За время воркшкопа вы:

  • Научитесь правильно использовать основные средства метапрограммирования в Ruby
  • Посмотрите на привычные ruby-разработчику идиомы новым взглядом
  • Научитесь писать DSL и библиотеки с гибко настраивающимися функциями
  • Разберетесь с применением метапрограммирования на примере Ruby on Rails, Rspec, Dry.rb
Характеристики
Наличие Предзаказ Тип Видео Размещение на сайте 01.11.2022 Артикул 1176

Об авторах

Фото: Thinknetica
Новый
0.0
Thinknetica
Онлайн-школа для разработчиков, работает с 2013 года. Главная специализация — Ruby on Rails: от основ языка до архитектуры, DDD и масштабирования.

Отзывы и комментарии

Отзывов ещё нет, будьте первыми

Написать отзыв
Нажимая "Отправить" Вы соглашаетесь с правилами публикации и даёте согласие на обработку персональных данных. Администрация не несёт ответственности за содержание отзывов.

Похожие товары:

Постер товара: Объектно-ориентированный дизайн в Ruby
Скидка 75%
Предзаказ
Средняя оценка 0.0 из 5 на основании 0 голосов
Объектно-ориентированный дизайн в Ruby
Ruby on Rails
Постер товара: Под капотом Ruby on Rails
Скидка 62%
Предзаказ
Средняя оценка 0.0 из 5 на основании 0 голосов
Под капотом Ruby on Rails
Ruby on Rails
Постер товара: Параллелизм и многопоточность в Ruby и Rails
Скидка 63%
Предзаказ
Средняя оценка 5.0 из 5 на основании 1 голосов
Параллелизм и многопоточность в Ruby и Rails
Ruby on Rails
Постер товара: Воркшоп
Скидка 78%
Предзаказ
Средняя оценка 5.0 из 5 на основании 1 голосов
Воркшоп "Event-Driven Architecture"
Event-Driven и CQRS
Постер товара: Автоматизация тестирования на Ruby
Скидка 60%
Предзаказ
Средняя оценка 0.0 из 5 на основании 0 голосов
Автоматизация тестирования на Ruby
GitLab CI и GitHub Actions
Постер товара: Воркшоп
Скидка 80%
Предзаказ
Средняя оценка 0.0 из 5 на основании 0 голосов
Воркшоп "Разработка на Elixir"
Бэкенд-разработка
Постер товара: Дизайн Rails-приложений: как победить монстра
Скидка 62%
Предзаказ
Средняя оценка 0.0 из 5 на основании 0 голосов
Дизайн Rails-приложений: как победить монстра
Ruby on Rails
Постер товара: Безопасность приложений на Ruby on Rails
Скидка 75%
Предзаказ
Средняя оценка 5.0 из 5 на основании 1 голосов
Безопасность приложений на Ruby on Rails
Ruby on Rails