Здравствуйте, Shmj, Вы писали:
S>Это плохой вариант. Нужно чтобы как раз было изменяемым — но отслеживаемым. Т.е. изменили поле — все UI, которые его используют — обновились сами.
Ну это паттерн такой, global state management называется. С неизменяемым (в смысле, иммутабельным) объектом глобального состояния и диспетчером действий, через которые он изменяется. Т.е. чтобы изменять состояние, ты отправляешь диспетчеру таск на модификацию. Диспетчер модифицирует состояние как запрошено, и оповещает все заинтересованные компоненты об изменении. Компоненты мониотрят это глобальное состояние, точнее, каждый монитори только тот кусочек глобального состояния от которого зависит, поэтому никаких избыточных перерисовок или обновлений не происходит.
Насколько я знаю в flutter block работает так же (в остальных перечисленных это так), но могу ошибаться
Можешь попробовать с жпт или Клодом пообщаться по этим кейвордам, он хорошо объясняет.