Size: a a a

Android Architecture

2021 June 19

P

Pavel in Android Architecture
MVx - UI-ная часть клиента
источник

L2

LDev 21 in Android Architecture
Тогда в чем разница, если MVx не только про UI, но и про Model тоже
источник

L2

LDev 21 in Android Architecture
UI != View
источник

P

Pavel in Android Architecture
Model в MVx - это интерактор в терминах clean
источник

L2

LDev 21 in Android Architecture
Понял, буду разбираться, чтобы подобных вопросов не задавать
источник

P

Pavel in Android Architecture
Т.е. бизнес-логика
источник

P

Pavel in Android Architecture
Я своим коллегам рисовал такую картинку. Там только ошибка - от интерактора к презентеру ромбик должен быть (композиция), а не стрелка (наследование)
источник

P

Pavel in Android Architecture
Большой прямоугольник UI - это "Vx" часть от любого MVx
источник
2021 June 20

A

Andrey in Android Architecture
Как правильно возвращать ошибки получения данных из репозиториев? нормально в домене держать что то типа такого?

sealed class FetchDataResult<T>
data class Success<T>(val data: T) : FetchDataResult<T>()
data class Failure<T>(val message: String, val cause: Exception? = null)
: FetchDataResult<T>()
источник

JF

Jorik Fat in Android Architecture
вполне
источник

A

Andrey in Android Architecture
ок, спасибо

в примерах ошибки в лучшем случае логируются и дальше репозитория не уходят
источник

A

Aleksei in Android Architecture
там в домейн слое еще должны быть entities
источник
2021 June 21

A

Aleksei in Android Architecture
что в данном контексте значит "рендеринг"?
источник

КР

Кирилл Романенко... in Android Architecture
Засунуть текст в textview и картинку в imageview
источник

A

Aleksei in Android Architecture
т.е., например, когда мы из фрагмента подписываемся на стейт типа такого:
       viewModel.stateLiveData.observe{
           binding.myTextView.text = it.newText
       }
это и есть рендеринг?
источник

КР

Кирилл Романенко... in Android Architecture
Да. Но в андроиде рендеринг это действие на уровне самого андроида, так что мы обозвали сеттинг данных рендерингом просто для удобства. Сеттинг данных звучит дольше и неудобнее.
источник

A

Aleksei in Android Architecture
понял, спасибо
источник

TA

Tamim Attafi in Android Architecture
Может binding звучит норм?)
источник

КР

Кирилл Романенко... in Android Architecture
С учётом того что уже есть viewbinding - средне.))
источник

YB

Yury Bondarenko in Android Architecture
Всем доброго времени суток)
Есть вопрос по навигации между экранами разных фич во многомодульном проекте, разделение на модули по фичам согласно подходу из статьи: habr.com/ru/company/kaspersky/blog/520766/ (для каждой фичи есть модули api и impl)

Раскрою свой вопрос на примере абстрактного приложения для просмотра статей. Существуют следующие фичи: поиск статей, избранные статьи, просмотр конкретной статьи. Поиск и "Избранное" используют фичу просмотра, когда пользователь выбирает статью.

Какое api должно предоставлять фича просмотра статей и где должна происходить навигация на экран просмотра?
Навскидку я вижу два варианта:
1. Метод api принимает Router/FragmentManager, навигация выполняется в имплементации фичи просмотра
2. Метод api возвращает Screen или Fragment, навигация выполняется внутри фичи, инициирующей просмотр статьи

Какой вариант предпочтительнее? Есть ли ещё варианты?
Навскидку второй вариант выглядит логичнее, но подозреваю, что у него есть менее очевидные подводные камни)
источник