Size: a a a

Android Architecture

2020 April 03

DB

Dmitro Boiko in Android Architecture
а что такое TelegraMP?
источник

КР

Кирилл Романенко in Android Architecture
Евгений Кузовкин
Берёшь то, что душе угодно - MVP/MVVM/MVI/TEA/TelegraMP, пишешь проект, релизишь, правишь баги - всё как обычно, особой разницы нет.
Максимально не согласен. Выбор правильной архитектуры оч важен для роста проекта и оч влияет на потраченное время на фикс багов.
источник

ЕК

Евгений Кузовкин in Android Architecture
Кирилл Романенко
Максимально не согласен. Выбор правильной архитектуры оч важен для роста проекта и оч влияет на потраченное время на фикс багов.
Да, и на долгосрочную перспективу особо важно, взять ли MVP или MVVM? С любым из этих подходов можно как максимально упростить разработку и поддержку, так и усложнить. Поработал с MVP/MVVM/MVI - при нормальном подходе разница заметна на коротком периоде, пока проект "устаканивается".
источник

КР

Кирилл Романенко in Android Architecture
Евгений Кузовкин
Да, и на долгосрочную перспективу особо важно, взять ли MVP или MVVM? С любым из этих подходов можно как максимально упростить разработку и поддержку, так и усложнить. Поработал с MVP/MVVM/MVI - при нормальном подходе разница заметна на коротком периоде, пока проект "устаканивается".
Я тоже работал со всеми этими подходами. Разница оч существенная. И зачастую, баги тоже разные.
источник

КР

Кирилл Романенко in Android Architecture
Просто потому что архитектура создаёт определённые рамки.
источник

ЕК

Евгений Кузовкин in Android Architecture
¯\_(ツ)_/¯
не сталкивался с таким никогда, обычно все подобные проблемы возникают не из-за того, что архитектура ограничивает, а потому что разработчик сам придумывает такую архитектуру, из-за которой вгоняет себя в рамки
источник

КР

Кирилл Романенко in Android Architecture
Евгений Кузовкин
¯\_(ツ)_/¯
не сталкивался с таким никогда, обычно все подобные проблемы возникают не из-за того, что архитектура ограничивает, а потому что разработчик сам придумывает такую архитектуру, из-за которой вгоняет себя в рамки
Так в этом и смысл архитектуры - загнать в рамки. Каждый будет писать как хочет, если дать ему полную свободу. Архитектура даёт чёткие рамки и границы, как надо развивать проект.

С mvi/tea у меня в основном возникают рекурсивные баги. С mvvm и mvp проблемы в основном из-за неконсистентного состояния на больших экранах.
источник

MT

Maxim Ternovtsi in Android Architecture
Кирилл Романенко
Так в этом и смысл архитектуры - загнать в рамки. Каждый будет писать как хочет, если дать ему полную свободу. Архитектура даёт чёткие рамки и границы, как надо развивать проект.

С mvi/tea у меня в основном возникают рекурсивные баги. С mvvm и mvp проблемы в основном из-за неконсистентного состояния на больших экранах.
Так в mvvm же очень трудно неправильное состояние получить
источник

КР

Кирилл Романенко in Android Architecture
Maxim Ternovtsi
Так в mvvm же очень трудно неправильное состояние получить
Чуть-чуть сложнее чем в mvp.
источник

ЕК

Евгений Кузовкин in Android Architecture
Кирилл Романенко
Так в этом и смысл архитектуры - загнать в рамки. Каждый будет писать как хочет, если дать ему полную свободу. Архитектура даёт чёткие рамки и границы, как надо развивать проект.

С mvi/tea у меня в основном возникают рекурсивные баги. С mvvm и mvp проблемы в основном из-за неконсистентного состояния на больших экранах.
> Каждый будет писать как хочет, если дать ему полную свободу.
Поэтому в команде можно сформировать требования, определённые соглашения, style guide. Всё остальное от лукавого, никто не мешает на большом экране навернуть state и рендерить его как в MVI, при этом используя MVP, если сильно хочется

По-моему, на сравнение и выбор паттерна разрабы тратят времени больше, чем на решения вытекающих из конечного выбора проблем, связанных с этим паттерном
источник

RM

Ruslan Mingaliev in Android Architecture
Кирилл Романенко
Чуть-чуть сложнее чем в mvp.
за счёт чего?)
источник

MT

Maxim Ternovtsi in Android Architecture
Ruslan Mingaliev
за счёт чего?)
состояний
источник

AC

Alexandr Chubryk in Android Architecture
Евгений Кузовкин
> Каждый будет писать как хочет, если дать ему полную свободу.
Поэтому в команде можно сформировать требования, определённые соглашения, style guide. Всё остальное от лукавого, никто не мешает на большом экране навернуть state и рендерить его как в MVI, при этом используя MVP, если сильно хочется

По-моему, на сравнение и выбор паттерна разрабы тратят времени больше, чем на решения вытекающих из конечного выбора проблем, связанных с этим паттерном
Не соглашусь: из-за выбора изначального каркаса архитектуры некоторые вещи просто нельзя будет провернуть, не привлекая дикие костыли. Архитектура именно что задаёт рамки.
источник

ЕК

Евгений Кузовкин in Android Architecture
Alexandr Chubryk
Не соглашусь: из-за выбора изначального каркаса архитектуры некоторые вещи просто нельзя будет провернуть, не привлекая дикие костыли. Архитектура именно что задаёт рамки.
Архитектура != презентационный паттерн, к слову
источник

AC

Alexandr Chubryk in Android Architecture
это понятно, тут иногда незаметно перескакивают с архитектуры на паттерны)
источник

RM

Ruslan Mingaliev in Android Architecture
Maxim Ternovtsi
состояний
состояний чего?
источник

MT

Maxim Ternovtsi in Android Architecture
Ruslan Mingaliev
состояний чего?
View
источник

ЕК

Евгений Кузовкин in Android Architecture
Alexandr Chubryk
это понятно, тут иногда незаметно перескакивают с архитектуры на паттерны)
Мой изначальный посыл в том, что разницы в выборе этого паттерна нет, если сделать по уму такую реализацию, которая не загоняет тебя в рамки нерешаемых багов. На архитектуру и качество приложения это влияет намного меньше, чем многие другие факторы
источник

КР

Кирилл Романенко in Android Architecture
Ruslan Mingaliev
за счёт чего?)
За счёт биндинга. Это чууууть-чуть облегчает контроль. Но по большому счёту, что mvp, что mvvp - свалка с размазанным стейтом. Централизация стейта в одной сущности значительно упрощает контроль.
источник

AC

Alexandr Chubryk in Android Architecture
Евгений Кузовкин
¯\_(ツ)_/¯
не сталкивался с таким никогда, обычно все подобные проблемы возникают не из-за того, что архитектура ограничивает, а потому что разработчик сам придумывает такую архитектуру, из-за которой вгоняет себя в рамки
Про паттерны взаимодействия с вьюхами я не спорю, я вот с этим скорее не согласен, тут речь шла про архитектуру
источник