Ну я 2,5 года сижу.) mvp нефига не проще. mvp это когда у тебя стейт приложения наполовину в презентере ,наполовину во вьюшках, еще может в интеракторе сидеть. Попробуй тоже там разберись когда кода нарастет много
А можно, пожалуйста, пояснительную бригаду? Почему в MVVM нет unidirectional data flow? Там же тоже View сообщает VM о событии, VM его обрабатывает и обновляет состояние, но которое View подписано
Если помудритб можно сделать Но в дефолтном представлении, udf в mvvm нет View может быть подписана сразу на несколько лайвдат/стейт флоу от vm , - как часто и делают Там а-ля, на прогресс, на ошибку и на сами данные Что уже не udf
Можно сделать единый стейт, и как бы подписаться на один источник данных от vm Но опять таки, мудрить надо Как нибудь придумывать reducer для состояния , например
Эти два патерна очень похожи. Единственное различие, MVVM работает с дискретными событиями и свойствами элементов, а в MVI это единый поток: в одном направлении идут события, в другом возвращаются стейты
C MVP - нет. В MVP презентер сам дёргает View, говорит ей что делать и держит ссылку на View. В MVVM/MVI View подписывается на изменения. В MVVM на куски состояния, а в MVI - на целое состояние. Поэтому MVVM ещё можно "превратить" в MVI. Но MVP - нет.