Size: a a a

Android Architecture

2021 July 10

JF

Jorik Fat in Android Architecture
так и понял. Спасибо
источник

AI

Arkadii Ivanov in Android Architecture
👍
источник
2021 July 12

AA

Albert Abdullin in Android Architecture
Очень интересно, спасибо
источник

AA

Albert Abdullin in Android Architecture
В книге встречал реализацию MVC и тоже не мог понять разницу между callback и контроллер. А тут @FatJorik интересный вопрос (для новичка) задал
источник

JF

Jorik Fat in Android Architecture
как я вообще понял (если не привязываться к устоявшимся реализациям mvc/mvp/mvvm) Controller, Presenter и ViewModel это 3 сущности слоя Presentation, которые могут существовать вместе.
Controller получает вызовы от View и обрабатывает их.
ViewModel хранит копию состояния фичи, для отображения и редактирования(он же store).
Presenter форматирует данные из ViewModel для отображения и передает их View
источник

АЕ

Алексей Ершов... in Android Architecture
Даже интересно, на каких источниках основаны эти определения? Конечно, можно так разделить ответственности, но сущности тогда надо называть JorikFatController и так далее. Controller ещё как-то близко к популярным определениям, а VM и Presenter вообще первый раз слышу такую интерпретацию.
источник

JF

Jorik Fat in Android Architecture
основываю на том, что в одной фиче может быть как controller, так и presenter, но в этом случае непонятно, где будет располагаться viewState (поэтому нужна будет еще одна сущность)
Так же в книге Мартина приводятся примеры того, что одна и та же информация может быть выведена в разной форме (html, pdf, doc, json....).
Т.е. данные могут быть едиными, controller так же единый, а вот presenter'ов может быть больше (по каждому на формат)

(так же и контроллеров может быть больше чем 1)
источник

АЕ

Алексей Ершов... in Android Architecture
источник

АЕ

Алексей Ершов... in Android Architecture
Ладно, корни того, что такое MVC в оригинале, всё равно канули в Лету, и сейчас у каждого понимание этих паттернов основывается на том, что ему сказали три других разработчика, которые их тоже поняли по-своему. Так что главное в своём коде консистентно их называть и в описании архитектуры проекта чётко определять, кто за что отвечает)
источник

JF

Jorik Fat in Android Architecture
я действительно считаю, что у нас всех неправильное представление о том, что является UseCas'ом, а что Interactor'ом. Что Controller, а что Presenter. У чего есть стейт, а где его быть не может и так далее
источник

АЕ

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

JF

Jorik Fat in Android Architecture
уже в процессе. Там просто много всего, поэтому даже не знаю с какой стороны подойти.
Там и определения всех этих сущностей, и объяснения почему одно так, а другое иначе, и как выделаются фичи и как идет взаимодействия между фичами
источник

JF

Jorik Fat in Android Architecture
и прототип еще пишется на все платформы сразу
источник

АЕ

Алексей Ершов... in Android Architecture
звучит многообещающе
источник

JF

Jorik Fat in Android Architecture
главное, теперь после такого анонса не обделаться :D
источник
2021 July 13

LB

Leonid Belyakov in Android Architecture
Какие решения вы используете, чтобы в mvi не сетить одни и те же значения во вью при изменении стейта?

Т.е. что-то похожее на diffUtil, наверное🤔
источник

АЕ

Алексей Ершов... in Android Architecture
Мы никаких, проблем с производительностью особых нет. Если есть, то обычно причина в другом)
источник

АЕ

Алексей Ершов... in Android Architecture
В композе так вообще сказка будет
источник

P

Pavel in Android Architecture
В MVIKotlin что-то типа diff utils есть из коробки.
источник

L

Leonid in Android Architecture
Чтобы не устанавливать одни и те же значения, обычно в сеттерах проверяют, чтобы новое и старое различались.

Есть другие варианты?
источник