Тёмный

RxJava - Observable, Flowable. Полный обзор. Часть 1. [RU, Android] / Мобильный разработчик 

Mobile Developer
Подписаться 51 тыс.
Просмотров 47 тыс.
50% 1

Всем привет. Наконец-таки я подошел к обзору одной из самых сложных библиотек для Андроид. Видео будет в нескольких частях, поэтому если вы что-то не увидели здесь - оно будет в следующих выпусках.
Мобильный разработчик в других соц. сетях
=======================
Вконтакте - mdeveloper
Instagram - / nplau
=======================
Наши друзья и информационные партнеры:
t.me/androidev - Телеграмм канал, посвященный разработке для Андроид!
Поддержать канал рублем:
PayPal - alexgladkov@icloud.com
Mastercard - 5536 9137 9985 0652
Полезные видео
========================
Dagger 2 - • Dagger 2 - @Provides, ...
Moxy - • Moxy - View, Presenter...
Наблюдатель - • Паттерны проектировани...
Ставь лайк, подписывайся и пиши, чтобы ты хотел увидеть в следующих видео.

Опубликовано:

 

29 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 162   
@schnaps1981
@schnaps1981 5 лет назад
0:00 - Введение 1:04 - Реактивный подход к программированию 3:25 - Добавление RxJava в проект. Пошаговая инструкция. (код) 8:19 - Многопоточность в RxJava 11:09 - Пример Observable, subscribe, Schedulers ( код) 25:06 - Базовые классы. Observable, Single, Flowable, Maybe, Completable 32:35 - Примеры базовых классов, Backpressure (код) 46:30 - Итоги урока
@MobileDeveloper
@MobileDeveloper 5 лет назад
Спасибо огромное за вашу помощь!
@MobileDeveloper
@MobileDeveloper 5 лет назад
Чуть позже закреплю )
@schnaps1981
@schnaps1981 5 лет назад
@@MobileDeveloper Завсегда пожалуйста ))
@namesecondname7863
@namesecondname7863 5 лет назад
Большое спасибо за видео!) Здорово что Вы сохраняете свой стиль подачи материала! Ждем продолжения)
@MobileDeveloper
@MobileDeveloper 5 лет назад
Вам спасибо ) вторую часть начал писать. Буду рад если поделитесь в соц сетях.
@ЕвгенийОсипов-и1ч
Хоть кто-то не переписывает тупо гайды, спасибо
@MobileDeveloper
@MobileDeveloper 5 лет назад
Всегда пожалуйста )
@denden4455
@denden4455 2 года назад
Пришел с с#. Ну и наплодили у вас сущностей в яве просто ужас.
@alexanderharlamov2151
@alexanderharlamov2151 4 года назад
Спасибо за видео! Всё предельно понятно, а главное - с примерами что где можно использовать. Обычно в статьях пишут сухую теорию, и непонятно, на кой хрен этот Rx нужен.
@MobileDeveloper
@MobileDeveloper 4 года назад
Спасибо ) рад, что понравилось )
@user-nh6di8fh3i
@user-nh6di8fh3i 3 года назад
Если у меня и без .observeOn нет ошибки, это нормально?
@MobileDeveloper
@MobileDeveloper 3 года назад
Не знаю, тут надо смотреть конкретный код, но скорей всего что-то не так)
@landfathich
@landfathich 3 месяца назад
Спасибо! Завтра собес в компанию, у них там Rx написан в стеке, а я Rx пару раз использовал только, в основном корутины, флоу и лайф дату использую. Вот нужно срочно набраться знаний, а нормальных видео на русском языке фиг найдешь (могу и на английском посмотреть, но на русском в разы понятнее и быстрее будет в моем случае). И вот твой видос то что надо, всё предельно понятно, местами даже ощущается как будто проще чем в тех же корутинках... хотя...
@Desuzedart
@Desuzedart 3 года назад
Супер) читая другую информацию я вообще не вывозил о чем вообще идёт речь и к чему это все, а после этого видео прям даже понял, осталось только закреплять на практике) спасибо!
@MobileDeveloper
@MobileDeveloper 3 года назад
Пожалуйста)
@sergeykodzha2621
@sergeykodzha2621 Год назад
Отвал логката в студии реально достает. Обычно помогает переключение процесса (например на дохлый эмулятор) и потом возврат назад. В левом верхнем углу консоли.
@Papabevegemabody
@Papabevegemabody Год назад
Неделю искал видео по RxJava, пытался разобраться - ноль на массу. После просмотра этого видео - произошло прямо какое-то прозрение. Огромное спасибо автору!
@sexol1235
@sexol1235 5 лет назад
Немного критики: + годная тема, всеми силами за; - то ли я плохо слушал, но я так и не услышал четких разъяснений: тут используется рх джава 2, думаю нужно уточнить и обьяснить разницу, зачем использовать рх кроме как замену колбеков?, ожно ли использовать рх в других случаях, например для работы с интерфейсами?, можно ли вообще использовать рх во всем приложении и что это даст?, в чем разница между типами?
@MobileDeveloper
@MobileDeveloper 5 лет назад
Критика - это всегда хорошо. Для начала скажу, что и в ролике я говорил, что это только первая часть. Она итак получилась почти на час. А я по сути ввел только основные термины. Дальше будем углубляться в уже более серьезные и глубокие детали. Если бы я все это сделал в одном видео - оно бы вышло часа на 4 ) Так что в следующих видео уже будет более подробно. Здесь пока вводная тематика с определением основных терминов. Плюс разницу между Observable, Flowable, Single, Maybe и Completable я вроде показал.
@backoff6776
@backoff6776 5 лет назад
Все умничают. Я тоже хочу) На самом деле автор впринципе ответил на этот вопрос во введении, когда сказал: "вы можете принять\выполнить любой модуль, как источник данных и подписываться на них в модуле, который от этих данных зависит". Тут стоит смотреть немного шире. Представте себе магазин. Есть склад есть прилавки. В контексте данного примера склад - источник данных. Так вот реактивный подход не предлагает вам готовой архитектуры склада. Он лишь предлагает вам заставить чувака на складе оповещать чуваков на прилавках о том, что ему завезли, когда ему что-то завезли. Вместо того, чтобы чуваки с прилавков периодически по каким-либо триггерам бегали на склад проверять, не привезли\забрали\разбили ли интересующий их товар. Тот же самый подход используется к примеру, когда вы работаете с сервером при помощи сокетов. Кому кого слушать - решать вам и это уже вопрос общей архитектуры приложения(кстати у автора есть видео на эту тему). К примеру модуль , который отвечает за обработку данных(обычно его реализуют по шаблону "репозиторий") может предоставлять наблюдаемых для презентеров\вью-моделей\контроллеров и т.д. И он же может прослушивать объекты классов, предоставляющих доступ к определенным источникам данных. Но не факт, что в каждом приложении есть смысл заводить такой модуль. Это уже разработчик решает исходя из задачи, переспективы расширения функционала и еще херовой тучи разных факторов. Сладовательно: - собственно для замены императивного(колбеков) взаимодействия модулей на реактивный он и нужен. - не уверен, что понял вопрос. Интерфейс существует для абстрагирования от имплементации. И если ваш модуль предоставляет доступ к данным - конечно в интерфейсе нужно указать, что возвращаемым типом некоего метода будет обсервер - нет. Слепо совать куда попало не нужно. К примеру я использую прослушку данных между слоями: DataSources -> Repositories -> Domain(логика) -> presenter. А вот между презентером и вьюшкой - классическая императивщина т.к. это общение происходит исключительно синхронно. Более того, вьюшка никогда не интересуется результатом вызова. Она оповестила презентер о том , что: "Меня нажали. Вот тут". А там хоть трава не рости. Это уже не ее забота. Ух... наумничался)))
@preenxus3425
@preenxus3425 5 лет назад
29:28 - воу-воу подожди, ты видишь не нарисовалась еще 😂
@MobileDeveloper
@MobileDeveloper 5 лет назад
😁😁
@_Iovan_
@_Iovan_ 5 лет назад
Золотой человек! Здоровья и успехов вам, вы делаете благое дело!
@MobileDeveloper
@MobileDeveloper 5 лет назад
Право слово аж засмущали ) пожалуйста )
@voicetv9048
@voicetv9048 Год назад
Всё красиво конечно, но меня смущает то что перемены dispose нигде не было использовано 😹
@schnaps1981
@schnaps1981 5 лет назад
Уроки отличные! сразу видно мастера! хорошо бы еще в описание к видео добавлять таймкоды по разделам урока
@MobileDeveloper
@MobileDeveloper 5 лет назад
Спасибо большое!) про тайм коды подумаю ) если вы их добавите я закреплю ваш комментарий под видео )
@schnaps1981
@schnaps1981 5 лет назад
@@MobileDeveloper Хорошо, когда буду пересматривать, а пересматривать придется ))) если не забуду, то соберу постепенно
@MobileDeveloper
@MobileDeveloper 5 лет назад
Буду очень благодарен!)))
@kirillsushilnikov9614
@kirillsushilnikov9614 4 года назад
@@schnaps1981 благодарочка, что не забыл☝
@ilyastoletov
@ilyastoletov 10 месяцев назад
Этот парень ещё не знал, что через какие-то 3-4 года он запишет курс по корутинам...
@SuperMarkwel
@SuperMarkwel 5 лет назад
Один из лучших каналов в ру сегменте, спасибо за ваш труд!
@MobileDeveloper
@MobileDeveloper 5 лет назад
Всегда пожалуйста ))
@preenxus3425
@preenxus3425 5 лет назад
ваши видео - просто кладезь знаний по андроиду. я к ним возвращаюсь по нескольку раз. как немного освоюсь, возвращаюсь и пересматриваю и тогда замечаю все новые и новые детали и лучше понимаю некоторые вещи, о которых вы говорите.
@MobileDeveloper
@MobileDeveloper 5 лет назад
Спасибо большое )) я старался сделать видео максимально объемлющими, чтобы они давали цельное представление )
@shroedingers9953
@shroedingers9953 Год назад
Thank you, it's clear even for me
@illiamaksymenko804
@illiamaksymenko804 4 года назад
Кажется понял, почему всё так просто получается для понимания. За счёт того, что используешь принцип: сначала описать проблему, в которую ты упираешься в коде, потом показать что из этой библиотеки нужно использовать и,собственно, как в коде. Еще очень круто то, что ролики длинные по сравнению со старт андроидом например, но там вообще отдельная тема, чел просто читал статьи с сайта.
@MobileDeveloper
@MobileDeveloper 4 года назад
Спасибо на добром слове )
@sfiirwuejnn
@sfiirwuejnn 5 лет назад
Наконец-то нормальное объяснение. Жду 2 части
@MobileDeveloper
@MobileDeveloper 5 лет назад
Спасибо ) буду рад, если поделитесь роликом )
@psychosuperlover727
@psychosuperlover727 3 года назад
Совсем недавно начал использовать rxjava, просто скопипастил код. Благодаря твоим видоса получилось разобраться, что же я по итогу копипастил))0)
@MobileDeveloper
@MobileDeveloper 3 года назад
Спасибо )
@alexandernifanin7366
@alexandernifanin7366 5 лет назад
Спасибо! А вы больше предпочитаете RxJava или корутины? Часто ли используете Observable? Если ломается отображение логов, иногда помогает переключение на No Filters (или другое значение) в правом поле LogCat. Может быть, перевыбор устройства в левом поле.
@MobileDeveloper
@MobileDeveloper 5 лет назад
Спасибо за подсказку! Я пока использую Rx по многим причинам, во-первых Rx в целом кроссплатформенный) То есть его с тем же успехом можно и в RxSwift применять ) во-вторых он решает не только задачи многопоточности, но и другие, ну и в третьих корутины пока еще не набрали мощи массового применения и многое до сих пор написано на Rx, но планирую переходить да.
@nickpakhomov7782
@nickpakhomov7782 4 года назад
У Вас EOF выпадал из-за маленького размера буффера у логката. А слали логов Вы много. Можно было бы его увеличить до желаемого размера: adb logcat -G 16M
@MobileDeveloper
@MobileDeveloper 4 года назад
Я уже подзабыл это видео ) Но вообще спасибо, не знал)
@riktompson2234
@riktompson2234 Год назад
Я в шоке, так хорошо донес инфу по RxJava
@alyxeinside3930
@alyxeinside3930 3 года назад
Мб reactive execution ? )
@Tuhtarov
@Tuhtarov 3 года назад
Привет, я недавно подписался на твой канал, уж ооочень полезная информация, особенно для такого маслёнка, как я.. Вы уже сделали разбор такой темы, как Дженерики? Интересно было бы посмотреть ваше видео про это..
@MobileDeveloper
@MobileDeveloper 3 года назад
Спасибо, дженерики еще не делал. Буду делать в основах
@VolodymyrBabenko-w7j
@VolodymyrBabenko-w7j 5 лет назад
Первое видео, которое я смотрю на этом канале. Выглядит очень интересно. Похоже, придётся подписаться) Автору большое спасибо!
@MobileDeveloper
@MobileDeveloper 5 лет назад
Рад что понравилось ) Буду очень рад если порекомендуете канал друзьям )
@VolodymyrBabenko-w7j
@VolodymyrBabenko-w7j 5 лет назад
Да я бы посоветовал, да честно говоря некому) Когдато я ходил на курсы по Андроид разработке. Так вот, я пробовал советовать одногрупникам каналы. Ну или как минимум конкретные видео. Меня не особо слушали. Наверное каждому необходимо своё изложение. Но если у меня спросят, обязательно расскажу)
@MobileDeveloper
@MobileDeveloper 5 лет назад
Ну можно в соц. сетях разместить ) вдруг заинтересует ) в любом случае, спасибо!)
@1Virkom
@1Virkom 3 года назад
Спасибо за отличные видео по этой теме. Пишу только на Java, с котлином знаком очень поверхностно, что такое корутины - не представляю. На новом проекте активно используется rxjava и понять ее было крайне сложно. У вас лучшие видео по этой теме.
@MobileDeveloper
@MobileDeveloper 3 года назад
Спасибо!)
@str0esku
@str0esku 3 года назад
Не нашел пока на русском ютубчике более понятного объяснения Rx чем тут, спасибо Алексей)
@MobileDeveloper
@MobileDeveloper 3 года назад
Пожалуйста :)
@luckydevil1601
@luckydevil1601 7 месяцев назад
Видео бомба, спасибо!🥰
@preenxus3425
@preenxus3425 5 лет назад
а что такое "val dispose = " как бы это в джаве выглядело?
@MobileDeveloper
@MobileDeveloper 5 лет назад
CompositeDisposable dispose = new ...
@Arman_127
@Arman_127 2 года назад
Большое спасибо реально приятно учиться когда так всё подробно объясняют
@MobileDeveloper
@MobileDeveloper 2 года назад
Спасибо )
@anatoliifrolov6959
@anatoliifrolov6959 4 года назад
Спасибо. Очень хорошо и понятно объясняется! Очень полезное видео. Рад что нашёл ваш канал!
@MobileDeveloper
@MobileDeveloper 4 года назад
Рад, что помогло )
@maxsimpleapps
@maxsimpleapps 4 года назад
Годные видосы, спасибо! Алексей, было бы очень круто, если в конце видео ты давал бы советы по литературе и статьям по обсуждаемой теме.
@MobileDeveloper
@MobileDeveloper 4 года назад
Подумаю над этим, спасибо )
@siovushfio4872
@siovushfio4872 3 года назад
Все четко и ясно! Спасибо друг!
@MobileDeveloper
@MobileDeveloper 3 года назад
Пожалуйста ) рад, что помогло )
@Andrey-pu1lv
@Andrey-pu1lv 5 лет назад
Годно!)Спасибо за видео!
@MobileDeveloper
@MobileDeveloper 5 лет назад
Пожалуйста )
@Ромочкакрол
@Ромочкакрол 2 года назад
Спасибо за твой контент, чувак, ты реально помог мне
@MobileDeveloper
@MobileDeveloper 2 года назад
Пожалуйста :)
@e11y1985
@e11y1985 4 года назад
The right way to spell "scheduler" is "skejuler"
@MobileDeveloper
@MobileDeveloper 4 года назад
В каком это языке?))
@e11y1985
@e11y1985 4 года назад
@@MobileDeveloper American English check it out here ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-p0Utdnh4hg8.html
@ДжошКембл
@ДжошКембл 7 месяцев назад
Огромное спасибо , все доходчиво и понятно 🤗👍👍👍Добра Вам!
@JalexyDev
@JalexyDev 4 года назад
Я наконец дошел до этой темы в своем саморазвитии и понял, что осознать ее самостоятельно, используя только документацию и примеры (усложненные ерундой) из инета, не смогу. И тут наткнулся на ваш канал, где вы подробно, простым языком, с простыми примерами мне все объяснили. Пока изучал, я увидел некую схожесть этой библиотеки с java stream-ами (которые лямбдишные из Java8). Но меня все время смущали непонятные функции передаваемые в качестве параметров, использование различных потоков и т.д. и т.п. Куча мелочей, что не складывались в общую картину... В общем 3 часа ночи, я с положительными эмоциями закончил смотреть ваше видео. Подписался, лайк поставил, буду и дальше изучать видео с вашего канала (пока не смотрел, что там есть, но из видео услышал что-то про ретрофит =) надеюсь уже готово). Пошел спа
@MobileDeveloper
@MobileDeveloper 4 года назад
Спасибо )) да есть некая схожесть )
@GriNAME
@GriNAME Год назад
Очень полезное видео, спасибо большое!
@ДмитрийБережной-в1и
Спасибо вам) очень доступно!
@MobileDeveloper
@MobileDeveloper 5 лет назад
Спасибо!
@ЕгорПоляков-т5ъ
@ЕгорПоляков-т5ъ 4 года назад
Пипец делал тоже самое но, у меня меняет текст кнопки из другого потока!!!
@MobileDeveloper
@MobileDeveloper 4 года назад
Это невозможно )) что то видимо вы упускаете )
@ЕгорПоляков-т5ъ
@ЕгорПоляков-т5ъ 4 года назад
@@MobileDeveloper Да, вы правы он работает в main потоке, просто .subscribeOn(Schedulers.newThread()) - не работает, разбираюсь почему.
@MobileDeveloper
@MobileDeveloper 4 года назад
Может вы его где то не там прописываете?
@ЕгорПоляков-т5ъ
@ЕгорПоляков-т5ъ 4 года назад
@@MobileDeveloper class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) btnText.setOnClickListener() { Log.e("MyClick", "click click") } val dispose = dataSource() .subscribeOn(Schedulers.newThread()) // .observeOn(AndroidSchedulers.mainThread()) .subscribe({ btnText.text = "Next int $it" Log.e("TAG", "next int $it") Log.e("TAG", "current Thread $it" + Thread.currentThread().toString()) }, { }) } fun dataSource(): Observable { return Observable.create{ subscriber -> for (i in 0..100) { Thread.sleep(2000) subscriber.onNext(i); } } } } Тут просто негде сделать ошибку))
@MobileDeveloper
@MobileDeveloper 4 года назад
Проверьте тред внутри самого обсервабл
@acrrono
@acrrono 5 лет назад
ооо как раз то что нужно!!
@MobileDeveloper
@MobileDeveloper 5 лет назад
Рад что в тему :)
@acrrono
@acrrono 5 лет назад
​@@MobileDeveloper поидее начинающие и не должны лезть сразу к сложным штукам, и научиться со временем, какнибудь. Но для таких нетерпеливых джунов как я например, каждый подробный ролик про хорошую библитеку - прям находка, спасибо!
@MobileDeveloper
@MobileDeveloper 5 лет назад
Это не последний ) Позже начну цикл еще совсем для новичков
@denissadokha3202
@denissadokha3202 4 года назад
Безусловно, очень классный урок, да и канал в целом, прям для меня золотая находка, только жаль, что на котлине пишите) тяжеловато для джавы воспринимать) наверное нужно будет все-таки переходить на котлин)
@MobileDeveloper
@MobileDeveloper 4 года назад
Да Котлин язык будущего )) спасибо )
@natalieg1736
@natalieg1736 3 года назад
очень понятно и цельно, спасибо огромное! идеально для начала погружения
@6apon95
@6apon95 4 года назад
24:43 trampoline() вызывает хакерскую атаку на серверы ГосДепа для победы Трампа в выборах. Секрет раскрыт :)
@MobileDeveloper
@MobileDeveloper 4 года назад
Оу шит ))) ну да )
@9etsamoe431
@9etsamoe431 3 года назад
Лайк за Клима Саныча!
@MobileDeveloper
@MobileDeveloper 3 года назад
Спасибо. Клим Саныча регулярно слушаю очень умный мужик.
@kirillsushilnikov9614
@kirillsushilnikov9614 4 года назад
Очень крутые видео у тебя. Правда, кое-какие моменты непонятны, но это из-за того, что я пока Kotlin не осваивал, а пишу на Java. Подписчиков должно быть гораздо больше! (и будет)
@MobileDeveloper
@MobileDeveloper 4 года назад
Спасибо большое!
@sakupenangel1294
@sakupenangel1294 4 года назад
Отличное видео, прям порадовал, хорошая подача, ничего лишнего, местами даже юмор
@MobileDeveloper
@MobileDeveloper 4 года назад
Спасибо )
@АнтонАлябьев-п1й
@АнтонАлябьев-п1й 4 года назад
на 8:30 уже 3 раз отвлекаюсь и приходится пересматривать заново
@MobileDeveloper
@MobileDeveloper 4 года назад
Антон Алябьев почему?)
@bohdanandreevich3901
@bohdanandreevich3901 4 года назад
Лучшие уроки на всём РУ Ютубе!) Автору удачи!)))
@MobileDeveloper
@MobileDeveloper 4 года назад
Спасибо )
@anpos
@anpos 5 лет назад
Класс! Хожу на курсы андроида и как раз взяли эту тему :) круто, что ещё на котлине при этом пишете! Спасибо вам большое за видео!!!
@MobileDeveloper
@MobileDeveloper 5 лет назад
Пожалуйста ) рад, что помог ))
@cardinalis6133
@cardinalis6133 5 лет назад
Отличненько, как всегда доступно и просто! Просмотрел с удовольствием и репостнул на Facebook. С нетерпением ожидаю следующее видео.
@MobileDeveloper
@MobileDeveloper 5 лет назад
Спасибо большое!!
@rizvanadzhoyan3021
@rizvanadzhoyan3021 5 лет назад
Можно вопрос, почему не используется у тебя Androidx ?
@MobileDeveloper
@MobileDeveloper 5 лет назад
Некоторые библиотеки с ним конфликтуют. В Мокси даже есть заявка на поддержку Androidx. Ну и общее правило работает - не трогай ) перейду со временем.
@handleftman
@handleftman 4 года назад
отличное видео для детального разбора RX
@MobileDeveloper
@MobileDeveloper 4 года назад
Спасибо )
@khametoff6386
@khametoff6386 3 года назад
Супер!)
@jojomajo
@jojomajo 4 года назад
Тупо кайф)
@romanfedorov7638
@romanfedorov7638 4 года назад
Круто! Спасибо за обзор, для старта очень недурно получилось
@MobileDeveloper
@MobileDeveloper 4 года назад
Спасибо большое ))
@digi_ghosttt
@digi_ghosttt 5 лет назад
У вас отлично получается объяснять сложный материал) Спасибо!
@MobileDeveloper
@MobileDeveloper 5 лет назад
Вам спасибо!)
@danilstepanov4555
@danilstepanov4555 3 года назад
Крутое видео. Немножко не хватает графических материалов. Например таблицы сравнения базовых классов. На словах трудно воспринимать)
@danilstepanov4555
@danilstepanov4555 3 года назад
Отдельный респект ещё за эксперименты в видео как на 46:00 !)
@MobileDeveloper
@MobileDeveloper 3 года назад
Спасибо большое :)
@danilstepanov4555
@danilstepanov4555 3 года назад
@@MobileDeveloper Начал смотреть на днях ваш канал с этого видео, потому что готовлюсь к собеседованию. И хочу выразить благодарность, пока только в форме комментариев) По видео вот прям чувствую что разработчик, быстро набираете код, ориентируетесь в среде разработки ну и плюс грамотная речь с конкретными терминами. Такого и правда очень мало на ютубе. И общение наравне со зрителем, что особо радует) Ну и конечно же поздравляю с Новым годом) Желаю ещё больше энергии, желания творить и создавать крутые проекты! Респект за вклад в развитие IT!
@MobileDeveloper
@MobileDeveloper 3 года назад
@@danilstepanov4555 спасибо большое очень приятно ) Рад что канал помогает ) Если хотите помочь каналу, то репост видео будет лучшей помощью )
@kickout367
@kickout367 5 лет назад
Ура!!! То что нужно...го 2 часть 3 часть ну и т.д.))))
@MobileDeveloper
@MobileDeveloper 5 лет назад
Скоро будет :)
@backoff6776
@backoff6776 5 лет назад
Толково. Кто не шарит - рекомендовано к просмотру на предмет "что за зверь такой?". Вопрос к автору. Все так. Но как объяснить Senior Android Developer-ам, что RxJava - это не либа для разруливания ассинхронки, а инструмент для реализации целой парадигмы в программировании. Чуть не на равных с ООП как таковым? И как при этом не употреблять ненормативную лексику, оскорбительные эпитеты и т.д. , когда такое приходится объяснять Senior мать его девам?
@MobileDeveloper
@MobileDeveloper 5 лет назад
Хахахах это настолько крутой вопрос, что я готов даже за него приз дать какой нибудь из своей коллекции )) Ну в голову пришло попросить написать на листочке или рассказать зачем нужны корутины если уже есть rx Java ) можно сразу два зайца убить )) и про подход и про потоки вс неблокирующие операции P.S. Вы из Москвы?
@backoff6776
@backoff6776 5 лет назад
Mobile Developer Я из Украины. Объяснл. Писал. Рисовал. Спецом захерячил на гите сампл проект с реактивным подходом без ReactiveX. На голых обсерверах. Эффекта ноль.. Мы на юзаем реакт, при этом мы ходим в репозиторий за данными при любых изменениях состояния LifeCycleOwner - ов. И мы "не видим в этом ничего странного". А потом мы смеемся над анекдотами про идусов и их код) Вопрос по сути риторический. Скорее не вопрос даже, а крик души.
@MobileDeveloper
@MobileDeveloper 5 лет назад
Ну ) да ) работает же )) тонкой оптимизацией редко кто занимается. То что оно там на каждый чих по 30 объектов создаёт это мало кого волнует. Rx очень удобная штука как дирижёр у оркестра. Но мы в своих проектах будем уходить в корутины + livedata
@backoff6776
@backoff6776 5 лет назад
@@MobileDeveloper да... имеет смысл. Я уже не раз задумывался, стоит ли вообще использовать реакт при работе с котлином. Пулы потоков нам впринципе не нужны. Их можно заменить из коробки(корутинами). Обсервера у нас есть из коробки(наблюдаемые свойства), и в SDK( life data). Стрим-апи вроде как тоже есть. Но тут дилема. С одной стороны - не хочется подключать сторонние инструменты, когда есть подходящие из коробки. С другой - всетаки реакт в этом смысле по-мощьнее будет на сегодняшний день(ИМХО). А вообще - надо переходить на XAMARIN O_o Там C#. Он по-круче будет чем котлин с джавой(пусть даже с Reactive). Дык еще и кросс-платформенный)))
@annaumova
@annaumova 5 лет назад
ИМХО, можно такие видео делать без музыки. Материал не легкий для восприятия, хочется полностью сосредоточиться, а музыка только отвлекает.
@MobileDeveloper
@MobileDeveloper 5 лет назад
Просто я боюсь что мой голос в полной тишине очень быстро надоест )))
@annaumova
@annaumova 5 лет назад
@@MobileDeveloper, вовсе нет!) голос приятный. А тишина помогает полностью сосредоточиться на материале, тем более что излагаете Вы отлично!!! надеюсь, мое мнение будет принято во внимание)
@MobileDeveloper
@MobileDeveloper 5 лет назад
@@annaumova спасибо, я подумаю что с этим сделать ) Наверное, опрос проведу в группе в вк. Подписывайтесь туда, чтобы и ваше мнение было учтено )
@A-pe5yy
@A-pe5yy 4 года назад
А мне наоборот с музыкой больше нравится, она же фоном )
@РусланСамарбаев
@РусланСамарбаев 4 года назад
Спасибо! Великолепно! Все понятно и очень доходчиво!
@MobileDeveloper
@MobileDeveloper 4 года назад
Спасибо ))
@NeoSmit
@NeoSmit 5 лет назад
Rx java? но почему там вы пишете на Kotline?
@MobileDeveloper
@MobileDeveloper 5 лет назад
Библиотека называется так. Язык я всегда указываю в левом нижнем углу
@sherzodmuhtorov8296
@sherzodmuhtorov8296 5 лет назад
4:15 Go play dota 2 ))
@MobileDeveloper
@MobileDeveloper 5 лет назад
Я сейчас очень редко играю ))
@nailapps7501
@nailapps7501 5 лет назад
Наконец-то, лайк не глядя )
@MobileDeveloper
@MobileDeveloper 5 лет назад
Спасибо ) очень непросто это видео делалось) но будут ещё части
@evgenyb.2973
@evgenyb.2973 5 лет назад
Отличный видос!
@MobileDeveloper
@MobileDeveloper 5 лет назад
Спасибо большое!)
@rizvanadzhoyan3021
@rizvanadzhoyan3021 5 лет назад
Очень интересно, спасибо!
@MobileDeveloper
@MobileDeveloper 5 лет назад
Спасибо, видел про Java, но, к сожалению, примеры здесь на Котлин
@mmingri
@mmingri 4 года назад
Достойно, спасибо.
@MobileDeveloper
@MobileDeveloper 4 года назад
Пожалуйста )
@yaroslavishchuk
@yaroslavishchuk 5 лет назад
Спасибо учитель))
@MobileDeveloper
@MobileDeveloper 5 лет назад
Ого )) вам спасибо)
@bekzhan356
@bekzhan356 4 года назад
кто из времени коровновируса?
@MobileDeveloper
@MobileDeveloper 4 года назад
Олды тут?)
@MobileDeveloper
@MobileDeveloper 4 года назад
Олды тут?)
@MobileDeveloper
@MobileDeveloper 4 года назад
Олды тут?)
Далее
Почему?
00:22
Просмотров 238 тыс.
荧光棒的最佳玩法UP+#short #angel #clown
00:18
RxJava. Неформальное введение.
23:15
Web vs Mobile: что выбрать новичку?
11:13
Почему?
00:22
Просмотров 238 тыс.