это же не правильно и нарушает дофига принципов, тогда если как только включаешь приложение просто создать все презентеры и передавать через интент, это норм кейс?
Только сегодня обсуждали, создание презентера во вью нарушает принцип D из SOLID. Ну и презентер нельзя передать через интент
И как это делать? К примеру мы работаем с картинкой. Во вью кнопки тыкаем, презентер картинку меняет и хранит при повороте. Но как его создать, если мы еще не спросили с чем работать?
А ещё норм кейс хранить ссылки на активити в презентере
В андроид есть особенность, что Activity одновременно является и реализацией View из MVP, и точкой входа в приложение, то есть, система создает для вас активити, а не вы его руками создаете. Поэтому на активити часто ложится ответственность инициализации нужных для экрана зависимостей. В простейшем случае это просто ручное создание, но может быть обращением в DI-контейнер, или другую штуку, которая предоставляет вам зависимости. То есть, вы можете сократить эту инициализацию до одной строчки в активити, но полностью уйти от этого не удастся. Передавать через интенты зависимости невозможно, потому что данные в интенте должны быть сериализуемыми, чтобы система могла их записывать на диск.
Обсуждают сегодня