1. Присоединяйся к лучшим! Пройди - РЕГИСТРАЦИЮ!

Скачать [Thinknetica] Артем Нистратов - Метапрограммирование на Ruby (2023)

Тема в разделе "Администрирование и программирование", создана пользователем #Megalodon, 9 май 2023.

  1. #Megalodon

    By:#Megalodon9 май 2023
    Moderator
    Команда форума Модератор

    Регистрация:
    17 фев 2019
    Сообщения:
    22.584
    Симпатии:
    22.858
    [Thinknetica] Артем Нистратов - Метапрограммирование на Ruby (2023)
    2023-05-09_18-03-26
    Онлайн-воркшоп для 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
    ПРОДАЖНИК

    СКАЧАТЬ
     
    niktexnik нравится это.
Похожие темы
  1. Todos
    Ответов:
    0
    Просмотров:
    432
  2. Shark Mafia
    Ответов:
    0
    Просмотров:
    697
  3. Shark Mafia
    Ответов:
    0
    Просмотров:
    597
  4. #Megalodon
    Ответов:
    0
    Просмотров:
    375
  5. Gredjin

    Стол заказов [Thinknetica] Ruby on Rails

    Ответов:
    0
    Просмотров:
    24
  6. #Megalodon
    Ответов:
    0
    Просмотров:
    1.255
  7. #Megalodon
    Ответов:
    0
    Просмотров:
    165
Загрузка...