• Форумы
  • Администрирование

Скачать [Thinknetica] Dry-rb: что, зачем и как. Тариф Слушатель [Антон Давыдов]

Информация
Цена: 170 РУБ
Организатор: Kail
Ссылки для скачивания
Скачать
Скачать
Скачать
Kail
Организатор
Организатор
Регистрация
09.04.2020
Сообщения
402 847
Реакции
39 528
Монеты
1 191
Оплачено
0
Баллы
0
11.08.2022
  • #SkladchinaVip
  • #1
[Thinknetica] Dry-rb: что, зачем и как. Тариф Слушатель [Антон Давыдов]
Ссылка на картинку

Программа воркшопа:

1 неделя
3 вебинара
Практические задания
Общение с автором и ответы на вопросы

День 1. Зависимости, DI, IoC containers. Собираем каркас проекта.
  • Для начала придется разобраться в зависимостях в коде, т.е. в любых библиотеках, классах, модулях, функциях и прочем, что используется в основном юните.
  • Разберемся в двух способах отслеживания зависимостях: Dependency Injection и базовом. Посмотрим как DI помогает в написании юнит и интеграционных тестов.
  • Чтобы не увеличивать сложность - разберемся с IoC-контейнерами, реализацией которого является dry-container.
  • Для менеджмента загрузки рассмотрим dry-system. В конце рассмотрим базовый проект, который позволит добавлять любые слои в систему.
В результате вы сможете:
Разобраться, что такое dry-rb в целом и что такое Layered architecture style и какие проблемы он решает. А также разобраться как помогает DI и контейнеры в создании структуры приложений. После, напишем свое первое приложение используя dry-system.

День 2. Пишем бизнес логику. Railway, result objects и валидации.
  • Для работы с бизнес логикой мы рассмотрим railway паттерн, который позволяет соединять технические шаги бизнес процесса в цепочку, в которой каждый шаг может завершить весь процесс.
  • Для того, чтобы railway заработал - мы возьмем DO-notations из dry-monads как способ реализации паттерна. Обсудим как и для чего использовать монады.
  • А чтобы быть уверенным, что схема данных, с которой мы работаем и которую пишем в базу валидна - воспользуемся dry-schema и dry-validation.
В результате вы сможете:
Научиться использовать railway подход для описания бизнес логики. Разберетесь зачем нужны монады как result objects и как валидировать данные и бизнес логику.

День 3. Добиваем транспортный и персистенс слои. Разбираемся с остальными dry-rb библиотеками.
  • Рассмотрим способы добавления различных транспортов (http, rabbit, kafka) и persistence-библиотек (rom, sequel, etc) и дополним наш проект.
  • Кратко рассмотрим оставшиеся dry библиотеки и поговорим где их использовать. А также при чем тут функциональные объекты.
  • Обсудим, что дальше можно делать со структурой болванки и как ее изменять. Что добавлять, что убирать, как выйти к slice и hexagonal структуре.
В результате:
  • Соберем систему в единый кусок.
  • Рассмотрим как добавить любой вид транспорта и персистенс слой.
  • Рассмотрим оставшиеся библиотеки из dry-rb экосистемы.
  • Обсудим, дальнейшие шаги для развития или для использования готовой болванки.
Результат:

Разберетесь, зачем нужен dependency injection, как он помогает в поддерживаемости, тестируемости и модульности приложений.
Поймете, при чем тут Inversion of Control (IoC)-контейнеры и какие варианты анализа, на основе зависимостей в контейнерах, можно использовать
Познакомитесь с паттерном railway (не путать с rails way) и узнаете, как этот подход помогает в написании бизнес логики, которая может зафейлиться на любом из шагов.
Создадите простой каркас сервиса, в котором можно использовать любые библиотеки для транспорта (как для консьюминга, так и для http/rpc вызовов) и любые библиотеки для персистенса, не только AR или rom.
Узнаете, какие виды валидации могут быть и как написать валидатор для любой схемы данных.
Узнаете, что есть в руби разработке вне RoR, благодаря чему сможете разобраться не только в hanami, но и в фреймворках на других языках (подходы используются в питоне, джаве, жс и других экосистемах)
Познакомитесь с использованием монады

Требования к участникам:

Опыт разработки на Ruby от года. Важно знать базовые вещи связанные с веб разработкой, такие как MVC, умение делать запросы в базу и писать минимальные тесты.
Профиль на GitHub
Базовые навыки работы с командной строкой и git
Желание разобраться в подходах, отличных от rails way
Показать больше
 
Зарегистрируйтесь , чтобы посмотреть скрытый контент.
Поиск по тегу:
Теги
dry-rb ruby ruby on rails thinknetica thinknetica pro архитектура приложиений паттерны проектирования
Похожие складчины
Скачать [Thinknetica] Архитектура современных веб-приложений на Ruby on Rails. Тариф Слушатель [Игорь Симдянов]
  • Kail
  • 17.02.2025
0
Ответы
0
Просмотры
89
17.02.2025
Kail
Скачать [Thinknetica] Под капотом Ruby on Rails
  • Kail
  • 05.05.2023
0
Ответы
0
Просмотры
229
05.05.2023
Kail
Скачать [Thinknetica] Создание и настройка PWA в Ruby on Rails. Тариф Слушатель [Владимир Долгий]
  • Kail
  • 13.08.2024
0
Ответы
0
Просмотры
206
13.08.2024
Kail
Скачать [Thinknetica] Параллелизм и многопоточность в Ruby и Rails. Тариф Слушатель [Денис Савицкий]
  • Kail
  • 18.11.2024
0
Ответы
0
Просмотры
154
18.11.2024
Kail
Скачать [Thinknetica] Безопасность приложений на Ruby on Rails [Александр Борисов]
  • Kail
  • 03.07.2022
0
Ответы
0
Просмотры
243
03.07.2022
Kail
Показать больше складчин

Войдите или зарегистрируйтесь

Вы должны быть авторизованны для просмотра материала

Создать аккаунт

Создать учетную запись займет не больше минуты!

Регистрация

Войти

Уже зарегистрированы? Просто войдите.

Войти
Поделиться:
Facebook Twitter WhatsApp Электронная почта
  • Форумы
  • Администрирование
  • Русский (RU)
  • Обратная связь
  • Условия и правила
  • Политика конфиденциальности
  • Помощь
Меню
Войти

Регистрация

  • Форумы
    • Новые сообщения
  • Мои складчины
  • Служба поддержки
  • Новые складчины
    • Новые сообщения
    • Последняя активность
    • Новые оценки тем
  • Как зарегистрироваться?