Ontoshgo
Почему?
потому что это тупой неотесаный костыль для казуальщиков
Vitaly
Ontoshgo
по дефолту не умеет канцелиться
Держит ссылку на таргет для доставки результата
Ontoshgo
этого недостаточно?
Vitaly
Это исправимо
Сергій
Оп, срачик rx vs everything
Ontoshgo
Anatoly
Не понятно чем вам не угодил rx?
Kanstantsin
пошла жара
Vitaly
В общем, у меня путаница, есть вот следующие крутые и не очень кейсы для работы с потоками: Thread, Executor, Handler, AsyncTask, RxJava и корутины Kotlin (если есть ещё оповестите пожалуйста)
Что, где и когда нужно использовать? Недавно мне сказали, что это всё устарело и для потоков только rxJava нужно использовать, а всё остальное использовали деды лет 5 назад (немного преувеличено, но суть та же)
Так вот не могли бы немножко подправить мою картину мира по потокам?
Ontoshgo
Это исправимо
если это надо исправлять, чет тогда это лучше стандартного треда и хендлера?
Ontoshgo
В общем, у меня путаница, есть вот следующие крутые и не очень кейсы для работы с потоками: Thread, Executor, Handler, AsyncTask, RxJava и корутины Kotlin (если есть ещё оповестите пожалуйста)
Что, где и когда нужно использовать? Недавно мне сказали, что это всё устарело и для потоков только rxJava нужно использовать, а всё остальное использовали деды лет 5 назад (немного преувеличено, но суть та же)
Так вот не могли бы немножко подправить мою картину мира по потокам?
кокрутины сейчас в моде
Mike
Vitaly
Если я например изучу корутины в Kotlin, то что ещё мне может понадобиться кроме них? Или неужели корутины решают все те задачи, что решают остальные 5 кейсов?
Ontoshgo
канцелит до и после него
Ontoshgo
Mike
В общем, у меня путаница, есть вот следующие крутые и не очень кейсы для работы с потоками: Thread, Executor, Handler, AsyncTask, RxJava и корутины Kotlin (если есть ещё оповестите пожалуйста)
Что, где и когда нужно использовать? Недавно мне сказали, что это всё устарело и для потоков только rxJava нужно использовать, а всё остальное использовали деды лет 5 назад (немного преувеличено, но суть та же)
Так вот не могли бы немножко подправить мою картину мира по потокам?
#Therad. Примитив многопоточности. Низкоуровневая штука, в чистом виде не используется.
#Executors. Основной инструмент для работы с асинхронными задачами в Java.
#ForkJoinPool (c Java 1.7). Executor на стероидах, более быстрый и прагматичный, c work-stealing.
#Handler(Thread). Андроидный event-loop.
#AsyncTask. Обёртка над Executor + Handler с уродливым API.
#RxJava. Реализация ФРП. Применяется когда нужно срочно увеличить размер APK или приготовить смузи.
#Coroutines. Основной инстмумент асинхронности в Kotlin.
#concurrency #multithreading
Kanstantsin
красиво )
Nick Senchurin
ой, размер апк, за уши притянуто
Андрей
"Реализация ФРП. Применяется когда нужно срочно увеличить размер APK."
Я думал это про Realm
Nick Senchurin
заказчик скажет тебе, что эта железка теперь не модная, давайка другую, а у другой нативные дрова 10 метров
Ontoshgo
Более валидно указать метод каунт
Nick Senchurin
хотя у прошлой джарник на 100кб был
Андрей
Ontoshgo
А не размер апк
Kanstantsin
а я когда и Handler и AsyncTask юзал давно, и особо не замечал проблем, всё годно, сейчас Rx, а лучше короутины сразу ))
Mike
Kanstantsin
стильно модно молодежно
Андрей
Mike
то есть?
если тред уже разгрёб свую очередь, он начинает тырить из чужих
Андрей
подсовывает работу в действующий поток, что уменьшает их количество?
Vitaly
Kanstantsin
Ontoshgo
Балансирует джобы между тредами в пуле кароче
Vitaly
Сейчас смотрю доклад почему rxJava -зло) Парень продвигает корутины Kotlin
Nick Senchurin
Mike
Mike
Nick Senchurin
я конктретно про тот видос
Ontoshgo
Если выбирать между котлетой и рх то котлета однозначно
Nick Senchurin
там пойнты, типа рхжаву надо учить
Nick Senchurin
а котлин типа не надо, лол
Ontoshgo
Но старые проекты просто так не передешь
Vitaly
https://www.youtube.com/watch?time_continue=66&v=dQSLfj8EoVU
Mike
Ontoshgo
ммм ебам
Mike
Kanstantsin
ох
Ontoshgo
если вкратце - каждый дрочит как хочет, для каждого инструмента есть свой валидный юз кейс
Kanstantsin
Kotlin вообще язык
Kanstantsin
Rx это подход
Nick Senchurin
единственное, что мне непонятно, так это как с корутинами делать всяческие retry ,onResumeOnError итд
Kanstantsin
реактивщина есть на куче языков
Mike
каналы похожи на обзёрваблы, но в целом RxJava может много разных штук
Vitaly
ммм ебам
Они как-то бесплатную презентацию проводили, мне понравлась эта компания)) Потому что это единственная компания из которых я находил, которая бесплатно проводила митап
Ontoshgo
Rx это подход
rx это библиотека, функциональное программирование - это подход
Nikita
такая ситуация, использую retrofi 2, c сервера приходит ответ в котором содержиться объект "Token", формат данного объекта динамический, существует около 6 его вариантов. как правильно в pojo классе использовать аннотацию @SerializedName("Token") ? ведь заранее не известно какой формат объекта придет. Первое что пришло в голову дженерики, но не пойму как их можно тут использовать...
Vitaly
Mike
Ontoshgo
а потом еще и обоссать их
Nikita
Ontoshgo
Ontoshgo
это фекалии
Ontoshgo
пиши свой десериализатор
Kanstantsin
Ontoshgo
иметь ввиду можно много чего
Nick Senchurin
Ontoshgo
Kanstantsin
как-то грубо
Андрей
Андрей
Nick Senchurin
с реактивщиной забыл про эту конструкцию, чему очень рад
Vishnyakov