Рет қаралды 757
Подписывайтесь на наш канал в телеграмм t.me/meetups_evrone, чтобы быть в курсе будущих митапов и не пропускать полезные доклады!
Михаил Моргунов / Backend Teamlead в Evrone
Про пользу рефакторинга не рассказывает только ленивый. В интернете полно статей и докладов с кучей общих слов в духе Тони Робинсона: "Делать хорошо - хорошо, а делать плохо - плохо". Поэтому в своем докладе я хочу отойти от канона и рассказать о практике: как мы рефакторим легаси проекты с использованием dry-rb. Типичная цель рефакторинга это пожилой проект с кучей лапши, бизнес-логикой в шаблонах и моделях. Я покажу с чего начинаем рефакторинг, в каком порядке разбираем лапшу, что из dry мы используем в первую очередь, а что всего лишь "nice to have".
Ссылка на репозиторий: bitbucket.org/mikhailmorgunov...
00:00 Введение
00:42 Откуда берется легаси?
00:58 Чем плох легаси
01:43 Что можно делать с легаси?
02:18 Все начинается с rails controllers
03:58 Что такое dry-action
05:06 Распил dry-action по single responsibility principle
05:34 Что такое Interactor
07:29 Код из модулей выносится в интеракторы
07:46 Коллбэки из моделей выносятся в интеракторы
07:53 Интеракторы переиспользуются
08:00 Как я распиливаю dry-action на интеракторы
09:00 Навигация по коду после рефакторинга
09:38 Завершение
09:55 QA сессия