Михаил Левченко - Итак, вы выбрали UDF-архитектуру. Как моделировать стейт?
HTML-код
- Опубликовано: 15 сен 2024
- Ближайшая конференция - Mobius 2024 Autumn, 11 октября (Online), 19-20 октября, Санкт-Петербург. Подробности и билеты: jrg.su/Yu6KNJ
- -
. . С каждым днём декларативный UI набирает обороты. Android, iOS, Flutter и React Native-разработчики активно переходят на MVI/Redux/TEA/BLoC и т.д. Но при всех своих плюсах UDF требует от нас решения новых проблем. Одна из них - моделирование состояния вашего приложения. И у неё есть решения!
В докладе сперва разберём Algebraic Data Types и почему для моделирования стейта нам они пригодятся больше, чем ООП. Затем мы перейдём к более сложным вещам - научимся работать с нашим стейтом как с миниатюрной базой данных. Все эти трюки будут снабжены практичными примерами и корявыми комиксами докладчика для лучшего усвоения материала.
Доклад будет интересен разработчикам среднего уровня и выше, которые ищут новый взгляд на частые проблемы со стейтом в UDF-архитектурах.
00:00 Вступление
01:54 На какие вопросы будем отвечать
05:16 Почему мы выбираем Unidirectional Data Flow
07:50 Советы при работе со стейтом
11:14 Почему Object Oriented Programming не подходит для стейта?
13:11 Как Algebraic Data Types заменят нам объекты?
25:23 Как выражать доменные правила в структуре стейта?
37:46 Зачем думать о стейте как о базе данных?
46:36 Почему UDF не просто очередной MV*
47:37 Перфоманс
51:40 Как моделировать стейт?
54:46 Пример составление стейта экрана на примере
01:00:35 Q&A
Крутой доклад!
Миша, спасибо за доклад! Классно про LCE и И/ИЛИ разложил 👍
Хочу только накинуть на треугольник =)), в клине зависимости от доменного слоя НЕ идут к framework слою где библиотеки живут. Иначе бизнес-логику невозможно будет переиспользовать без конкретной библиотечки. Дядя Боб потому кружки и рисовал, чтобы зависимости смотрели в центр ;)
Не за что. Расскажи тогда как ты собираешься без библиотеки, допустим, с Result, или без buildList описывать бизнес. В этой пирамидке библиотеки это не андроид фреймворк, а скорее более фундаментальные вещи типа структур данных, алгоритмов или пакета Math
на чекауте с итоговой суммой идею стейте считаю проданной )
Самое печальное во всем этом - не использовать ООП: вот есть стейт с общим родителем(силд класс), но при этом все равно юзается when, а не полиморфизм. meh
Дизайнер не нарисовал и фиг с ним! Зато собес в Яндекс как в Гарвард. Вы там либо крестик снимите либо трусы оденьте