Любимый❤
У нас не предполагается такое количество итемов
или все таки для кажого айтема создается презентор?
Любимый❤
лооооол
Любимый❤
интересно
Ferrero
Ну по сути это не очень критично
Ferrero
Как мне кажется
Ferrero
С точки зрения архитектуры все ок
Любимый❤
Ну по сути это не очень критично
а никто и не говорит что критично
Ferrero
а никто и не говорит что критично
По сути вью холдер самостоятельная вьюшк, в которой может твориться многое
Roman
Ну вот типо к каждому вюхолдеру соответствует свой вью и презентер
Любимый❤
С точки зрения архитектуры все ок
разве ViewHolder можно считать представлением View? это же часть фрагмента
Любимый❤
а фрагмент и есть View слой
Любимый❤
это все равно что для каждого виджета отдельный презенитор создавать
Roman
Чутка спиздел про минуту, прокатил полный ребилд. Но обычно на практике чуть меньше минуты, так как не нужно билдить каждый модуль
Ferrero
это все равно что для каждого виджета отдельный презенитор создавать
Где-то это оправдано логикой, где-то нет. Я использую презентер для фрагмента, в который передаю холдер как itemview
Ivansuper
ого, тут ещё и дагер)
Не просто даггер, а даггер 2, попрошу
Roman
а фрагмент и есть View слой
Я как-то проще воспринимаю. Всё, что в платформенных модулях – всё View =)
Roman
ого, тут ещё и дагер)
Самый прикол начинается, когда захочется, чтобы итемы видели презентер родителя
Roman
А там вложенность доходит до 4 уровней MVP
Любимый❤
Не просто даггер, а даггер 2, попрошу
когда люди говорят про даггер, мне кажется что они имеют введу даггер 2
Roman
Меня это выбесило и я уже бродкасты отправлять начал
Roman
Есть активность (мвп), в ней два фрагмента (по мвпшке соответственно), в одном из фрагментов вюпейджер с тремя фрагментами (ещё мвпшки) со списками (каждый итем мвп); и при определенном действии с итемом мвп активити должен открыть другой фрагмент
Roman
И там ещё скоупы
Ferrero
я считаю, что можно, конечно, иметь презентеры для чего захочешь, но у твоего пм архитектура головного мозга
Roman
я считаю, что можно, конечно, иметь презентеры для чего захочешь, но у твоего пм архитектура головного мозга
У него 8 лет опыта и параллельно техлидство в баду, так что не выёбыаюсь особо
Ivansuper
А ты не говорил с тимлидом? В чем причина того что он настаивает на таком?
Ferrero
написал большое приложение без архитектуры по молодости и настырности, а потом пришлось поддерживать
Roman
при сингл активити, можно интерфейс Activity инджектить в презентер
Забыл сказать, что презентер не имеет возможности знать про активити вообще; тк он в платформенно-независимом модуле. Можно конечно интерфейс, но это же ещё сильнее запутает код. Думаю, броадкаст в этом случае самое простое решение
Roman
У нас ещё гайдлайн по зависимостям модулей. Наверное смешно, если у вас в проекте всего около 20 модулей)
Roman
Ладно, выговорился
Ivansuper
Типо сингл-респонсабилити
Ну под таким предлогом можно на каждый текст вью лепить презентер
Roman
Ну под таким предлогом можно на каждый текст вью лепить презентер
Ну не на текст вью уж, но у тулбара свой например
Ivansuper
Ну про тулбар кстати скорее всего соглашусь, в этом есть смысл
Roman
Да, там просто разные вьюшки
Roman
И один презентер
Roman
И с помощью даггера подключаются нужные вьюшки
Roman
У кого-то есть более сложная архитектура?
Roman
Я кому ни расскажу, все офигевают
Ivansuper
Самая сложная архитектура это когда ее нет
Михаил
И с помощью даггера подключаются нужные вьюшки
один только даггер - это уже боль
Max
как в репозитории сделать работу с сетью?
Roman
один только даггер - это уже боль
там же такие элегантные субкомпоненты
Ivansuper
У меня есть черновой код на с++, там вообще нет классов и все в кучу
Ivansuper
там же такие элегантные субкомпоненты
Просто сам даггер на любителя. Не всеми он переваривается хорошо
Ivansuper
Но стал популярным
Михаил
там же такие элегантные субкомпоненты
пока не попробуешь решения попроще и поудобней - так и будешь считать даггер верхном совершенства (по себе знаю)
Roman
К слову, точно такая же архитектура у одного крупного приложения покупки жд билетов в одной стране Европы
Михаил
Но стал популярным
альтернативы тогда были еще хуже
Roman
пока не попробуешь решения попроще и поудобней - так и будешь считать даггер верхном совершенства (по себе знаю)
Ну это был сарказм на самом деле. Я пробовал коин, и офигел, насколько это просто
Ivansuper
альтернативы тогда были еще хуже
Знаешь, всегда можно было сделать подачу через конструкторы и другие удобные места
Ivansuper
Даггер тебе просто позволяет чуть меньше пачкать руки
Михаил
Знаешь, всегда можно было сделать подачу через конструкторы и другие удобные места
ну это сейчас так все думают, тогда об этом мыслей толком и не было-то
Ivansuper
Вроде бы декоуплинг, а весь проект с даггером фиг сдвинешь куда где нет даггера
Михаил
Вроде бы декоуплинг, а весь проект с даггером фиг сдвинешь куда где нет даггера
я вот подумываю когда-нибудь обширный слой логики в одном приложении попытаться сделать универсальным для андроид и иос
Михаил
у нас так кстати =)
с даггером-то?
Ivansuper
я вот подумываю когда-нибудь обширный слой логики в одном приложении попытаться сделать универсальным для андроид и иос
Вот это кстати будет очень хорошей тренировкой для организации реально полезной архитектуры для универсальности кода
Roman
с даггером-то?
на IOS вручную di
Ivansuper
Правда что делать с языком?
Михаил
на IOS вручную di
ну а я хочу в идеале подобрать или самому написать di вроде toothpick'а, который бы на обе платформы работал
Любимый❤
Roman
при di на мой взгляд нет прям уж сильной запутанности
Ну легко сказать на самом деле. А когда тратишь несколько часов на попытки это сделать, потом в итоге видишь, сколько оверхеда получается поверх уже существующего оверхеда и сдаёшься
Любимый❤
кстати я помню на мосдройд был доклад
на одном экране было несколько презенторов
Roman
Правда что делать с языком?
Логика Kotlin -> LLVM А на платформах всё что хочешь
Любимый❤
но опять же, это подходит если в твоем приложении не более 10 экранов
IB
https://ru.stackoverflow.com/questions/948187/Один-обработчик-для-двух-кнопок-в-котлине
Михаил
Есть же Kodein
синтаксис и реализация не очень нравится, toothpick на мой взгляд поудобней будет (имхо)