Pull to refresh

Comments 3

  1. Тема "глупого" виджета и его связи с вашим MapViewModel не раскрыта.

  2. ViewModel не нужен как и сам MVVM во Flutter'е.

  3. TextController'ы, FocusNod'ы, AnimationController'ы тоже предлагаете выносить во ViewModel?

  4. Use case не нужен - для инкапсуляции бизнес-логики у вас уже присутствует Bloc. Он не является частью presentation, это буквально Business Logic Component.

  5. Классы зависимостей не должны быть singleton'ами.
    Дальше продолжать не буду, статья - набор антисоветов.

Здравствуйте. Можете дать пояснения по п. 2 и 5? Спасибо.

  1. "Глупый" виджет не является какой-то темой которую можно выделить, виджет не должен знать о модулях стоящих выше и все, это всего лишь аббревиатура.

  2. Vm содержит в себе всю дополнительную логику, которую мы не покажем в view.

  3. Когда у вас view начинает расти больше чем 300 строк пора задуматься куда и что выносить.

  4. Bloc - это стейт-менеджер который зависит от бизнес логики выше. Use-Case нам помогает в обработке ответа от этой бизнес логики, например используя switch проверять пришедший к нам результат, и эмитить соответсвующее состояние. На больших проектах use_case вещь необходимая.

  5. Я не писал о том, что классы зависимостей должны быть st, я описал то, что в di container мы ложим сингл тоны, т.к. di container иницилизирует в нем зависимости, доступные из любой точки приложения.

Sign up to leave a comment.

Articles