Я не думаю, что MVVM обязательно представляет ваши сквозные проблемы непосредственно как таковые. Обычно ваша ViewModel имеет дело с вашей бизнес-логикой, также известной как основные проблемы. Однако ваши сквозные проблемы будут разбросаны по разным слоям (модель, представление, модель представления).
Например, скажем, у вас есть аспект ведения журнала в вашем приложении (сквозная проблема). Затем этот регистратор будет внедрен как зависимость в вашу ViewModel, чтобы, возможно, регистрировать события. Или другим примером может быть ваша сетевая функциональность, представленная HTTP-клиентом, внедренным в ваш уровень модели, чтобы вы могли выполнять вызовы REST API. Эти сквозные проблемы или зависимости могут быть ограничены сроком службы вашего приложения, поскольку они используются повсеместно.
Вам может быть полезно использовать Dagger для создания этих зависимостей с областью действия приложения.
TLDR: MVVM помогает с разделением проблем, но вы должны правильно составлять свои классы со сквозными проблемами/зависимостями с внедрением зависимостей.
person
Dung Ta
schedule
13.07.2018