169 похожих чатов

#Noob есть цепочка activity->viewmodel->repository->datasource на каком уровне использовать rxjava и на

каком возвращать livedata ?

42 ответов

36 просмотров

rx и livedata это взаимоисключающие технологии

Серёжа- Автор вопроса

не знаю индус в туторе получает single<T> и превращает его в livedata<T>

зачем?

Серёжа- Автор вопроса

чтобы передать сущность наружу во viewmodel Я уже сам запутался в этой матрёшке

А в rx нельзя передать?

в репо рх во вьюмодели лайвдату

Серёжа- Автор вопроса

хз я #noob не понимаю дальнейшие шаги. По этому и спрашиваю что в каких местах что предаётся и в каких местах обрабатывается. Репозиторий не должен работать c rx ?

зачем?

Почему? Они разные просто.

что зачем?

а какой профит от этого?

зачем 2 dataflow?

затем, что репо не должен знать об андроид компонентах

Серёжа- Автор вопроса

#noob репозиторий же получает данные из разных источников. Он же должен просто дергать методы datasource в котором используется rx. Или я опять не так понял ?Блин почему нет нормальной объясняловки этой цепочки activity->viewmodel->repository->datasource

Ну, я не вижу профита от использования rx, кроме запутывания кода. Я в него сильно не погружался, но находил косяки у восторженных фанатов rx.

погугли livedatareactivestreams. это официальная либа. там есть методы toLiveData()

а как же Room возвращает LiveData?

Flow/Rx/LiveData - это все про одно (dataFlow)

Я в курсе. Но в rx высокий порог входа.

рум не репозиторий

Flow - Kotlin Rx - ThridPart LiveData - Android Это же то же самое что Ktor/OkHttp/Volley или Fresco/Picasso/Glide Если используете одно - то не надо тянуть другое (за исключением случаев миграции)

так и у Retrofit есть конвертер в LiveData

можешь ссылку скинуть?

а причем тут репозиторий?

Ну, это уже религиозные войны начинаются 😏 Понятно, что мешать одно с другим без нужды смысла нет. Но и возводить в догму это не нужно.

Когда лайвдата вью модели встала взаимоисключать рыксу?)

можно мапить обсервебел в LiveData

у этого одни минусы и ни одного плюса

СкАжи это лидам на моей работе

АХАХХАХАХА

Ливдата в вм. Рх тоже в вм.

такое есть. И уверен что есть везде. Но это бред

И бизнес логика там же... Такъ победимъ!

платформа зависимая логика может там находится

лайвдата в ui слое лучше же? Хотя бы тем что (насколько помню) она сама за лайфсайклом умеем следить, это удобнее чем диспоуз вызывать.

Это тру Стори на работе

вся аппка в рх... ууу)

А это вот реалии сегодня

вот я не понимаю как это работает. Объясните мне. На работе пилим костыли и ругаемся, что так делать нельзя. А потом всем говорим как делать не надо, потому что так делаем на работе

Братан. Ты пришел в проект где Легаси и его надо поддерживать

да вопрос не в этом. А в том, зачем другим советовать костыли?

Кто кому что советует?

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта