29. Просто про КОРУТИНЫ (COROUTINE) в Kotlin. Пишем свой мессенджер для Android на Kotlin.

แชร์
ฝัง
  • เผยแพร่เมื่อ 20 ต.ค. 2024

ความคิดเห็น • 47

  • @mr.developer
    @mr.developer  4 ปีที่แล้ว

    Всем привет, для удобства создал канал и чат в Telegram. Вступайте в чат, будет интересно))
    Канал: t.me/mobile_developing
    Чат: t.me/mobile_developing_chat

  • @КахарманБалтабаев-б2о
    @КахарманБалтабаев-б2о 4 ปีที่แล้ว +21

    Отличный подход. Сначало привить понимание, а далее уже разбирать остальное. Круто!!!!! Спасибо за простое объяснение

  • @amadeus667
    @amadeus667 2 ปีที่แล้ว +2

    Большое спасибо за труд! только сейчас появилось хоть какое-то понимание что к чему вообще

  • @АнастасияАвдеева-ы6г
    @АнастасияАвдеева-ы6г 2 ปีที่แล้ว +1

    Было очень интересно и ново

    • @mr.developer
      @mr.developer  11 หลายเดือนก่อน

      Благодарю за отзыв, очень приятно ☺️🤝

  • @АндрейБабаш-ю9п
    @АндрейБабаш-ю9п 2 ปีที่แล้ว

    Круто! Главное просто и понятно

  • @yurii_s_m_25
    @yurii_s_m_25 3 ปีที่แล้ว +1

    Такого простого пояснення ще не зустрічав на просторах інтернету

  • @OCEH6
    @OCEH6 ปีที่แล้ว +2

    Ого, видимо "проблемная" тема, я 672 лайк поставил =)) (в предыдущих видео в районе 200 было =)) )
    Огромное спасибо!
    У автора редкий талант - способность объяснять не очевидные вещи. Обычно, условный учитель дает материал, и вроде все понятно и даже у учителя всё работает, но пока у тебя что-то получится проходит ощутимое количество времени и приходится потратить кучу сил. Когда учитель сам преисполняется в своём познании, как автора этого курса, то материал становится понятным и легко усваиваемым для учеников. Очень круто! Рукоплещу!

  • @st.libertos
    @st.libertos 2 ปีที่แล้ว

    Спасибо за уроки!

  • @AntonParonko
    @AntonParonko 4 ปีที่แล้ว

    Крутой!) Требую продолжения!

  • @mr.developer
    @mr.developer  4 ปีที่แล้ว +1

    Друзья, открылся чат для обсуждения и вопросов по данному
    курсу: vk.me/join/AJQ1d/T0Thd8BDP9Jf06493u

  • @armangukasian
    @armangukasian 2 ปีที่แล้ว

    спасибо большое!)

  • @andy0x58
    @andy0x58 4 ปีที่แล้ว +2

    В общем классно все! Наглядный пример, все круто, в документации бы еще такие примеры приводили бы...

    • @mr.developer
      @mr.developer  4 ปีที่แล้ว +1

      Благодарю за отзыв)

  • @ЕвгенийСокирко-д1в
    @ЕвгенийСокирко-д1в 4 ปีที่แล้ว +1

    Спасибо!

  • @anoninfo97
    @anoninfo97 3 ปีที่แล้ว +1

    Пиздатый ты мужик. Спасибо большое. Вопрос - а есть ли смысл запускать корутинку для получения преференсов?

    • @mr.developer
      @mr.developer  3 ปีที่แล้ว

      Благодарю за отзыв 🤝. Насчёт преференц - я так не делаю)

  • @chriswaytt6009
    @chriswaytt6009 3 ปีที่แล้ว

    Спасибо большое за уроки. Сделайте урок по корутинам пожалуйста )

  • @abuiman5251
    @abuiman5251 3 ปีที่แล้ว

    👍🏻👍🏻👍🏻

  • @MrLOLs1
    @MrLOLs1 4 ปีที่แล้ว

    Спасибо

  • @ВладиславГришин-ш7ш
    @ВладиславГришин-ш7ш 2 ปีที่แล้ว +2

    корутины придумали в lua, для медленных подзадач самое то

  • @onegin5129
    @onegin5129 4 ปีที่แล้ว +2

    Не понял тонкостей отличия GlobalScope от CourutineScope(IO), в пером случае корутина работает постоянно.. но что происходит после того как функция в корутине выполнилась? А в CourutineScope(IO) корутина заканчивает существование, после выполнения в ней функции?

    • @mr.developer
      @mr.developer  4 ปีที่แล้ว

      Можно сказать и так

    • @МаксимАлексеев-ч4й
      @МаксимАлексеев-ч4й 4 ปีที่แล้ว

      @@mr.developer что "можно сказать и так"? Там вопрос был: "что происходит с корутмноы запущенной в global scope когда функция закончит работу?"

    • @mr.developer
      @mr.developer  4 ปีที่แล้ว +3

      Читайте внимательно вопрос, там есть и ответ

  • @ДмитрийКаберник
    @ДмитрийКаберник 4 ปีที่แล้ว

    По вашему мнению и опыту, стоит учить RxJava или лучше писать приложения на корутинах? А то уже не знаю, погружаться в RxJava или корутины.

    • @mr.developer
      @mr.developer  4 ปีที่แล้ว

      Я за корутины, но у каждого свое мнение.

  • @kirillsushilnikov9614
    @kirillsushilnikov9614 3 ปีที่แล้ว +1

    Спасибо за видео.
    Но я столкнулся с обратной проблемой: мне нужно, чтобы метод фрагмента onCreateView подождал остановил свое выполнение, пока внутри него не выполнится операция, выполняемая в отдельном потоке (метод .get Firestore)
    1. При нажатии кнопки в одном фрагменте через SafeArg я передаю некий параметр во второй фрагмент.
    2. Во втором фрагменте получаю этот SafeArg и использую его для асинхронного вызова FirebaseFirestore.getInstance().collection...
    3. Какии бы я ни делал callback, даже если я делаю это внутри ViewModel, всё равно не получается заставить подождать onCreateView.
    Мне получается нужно как-то выполнить операцию с БД после нажатия кнопки (которая открывает через Navigation второй фрагмент), но до запуска onCreateView второго фрагмента?
    Что в таких случаях делать? Заранее спасибо.

  • @АндрейСамогур
    @АндрейСамогур 4 ปีที่แล้ว

    Библиотека корутин не была добавлена в студио, пришлось искать самому и прописывать, на заметку)

  • @yahiko6764
    @yahiko6764 3 ปีที่แล้ว

    как тема в студии называется?

  • @alexandrvoevodin5113
    @alexandrvoevodin5113 4 ปีที่แล้ว +2

    А как же runBlocking, suspend? Та самая не понятная теория на хабре, д и других источниках

    • @mr.developer
      @mr.developer  4 ปีที่แล้ว +4

      Здравствуйте, используя runBlocking, вы заблокируете текущий поток. Нам это зачем?. Нам необходимо выполнить асинхронную операцию. Многие не правильно используют runBlocking. Использовать данную функцию имеет смысл, например в JUnit тестах когда необходимо заблокировать поток. По поводу suspend, здесь нет смысла в данном модификаторе, так как наша функция не останавливается. Если же, нам необходимо было бы приостанавливать функцию initContacts, например для синхронизации с базой данный SQlite,тогда да.

    • @alexandrvoevodin5113
      @alexandrvoevodin5113 4 ปีที่แล้ว

      @@mr.developer о, спасибо. Благодарен!

  • @cheguevara6002
    @cheguevara6002 3 ปีที่แล้ว

    дизы кто ставил не могу понять) это наверное до этой стадии изучения дошел и дальше лень было))

  • @dmitriykhalturin4918
    @dmitriykhalturin4918 3 ปีที่แล้ว

    Ответ RX? Рили? А ни что что это вообще о разном? Курутинки о сопрограммах, а рх о потоке данных и многопоточка там как побочные результат.
    Вот flow это ответ рх, действительно

    • @mr.developer
      @mr.developer  3 ปีที่แล้ว

      Млин ничего не понял, но очень интересно 👍

    • @dmitriykhalturin4918
      @dmitriykhalturin4918 3 ปีที่แล้ว

      @@mr.developer естественно что не понял, раз в своем видео говоришь что курутинки ответ RX-у

    • @mr.developer
      @mr.developer  3 ปีที่แล้ว

      Даже спорить не буду

    • @dmitriykhalturin4918
      @dmitriykhalturin4918 3 ปีที่แล้ว

      @@mr.developer почему?

    • @mr.developer
      @mr.developer  3 ปีที่แล้ว

      Нет ни времени ни желании.)

  • @Xa4_Xakum
    @Xa4_Xakum 3 ปีที่แล้ว

    глобал скоуп подчеркнут красным

    • @mr.developer
      @mr.developer  11 หลายเดือนก่อน

      Может импорты?