@kotlin_lang

Страница 812 из 982
Kirill
16.08.2018
12:58:30
> программисты на KtJS под RN лол

Quantum Harmonizer
16.08.2018
12:59:55
> программисты на KtJS под RN лол
ну, YouTrack под мобилки

Kirill
16.08.2018
13:00:49
ну, YouTrack под мобилки
шок контент. TIL: https://github.com/JetBrains/youtrack-mobile (я не знал что такое есть)

Timophei
16.08.2018
13:04:37
Google
Di7aK
16.08.2018
13:09:56
а я думал я старый

Timophei
16.08.2018
13:11:39
нет, kotlin + android только школьники

бородатые мужики на java

Quantum Harmonizer
16.08.2018
13:12:25
на чём пишут бородатые школьники?

You
16.08.2018
13:12:32
На пхп

Di7aK
16.08.2018
13:17:33
ну меня лично достали излишние строки в java и я перешел на котлетки

I
16.08.2018
13:22:24
А еще есть Kotlin Native. Я на нем пытаюсь под iOS писать
и как получается что-то толковое написать?

Andrew
16.08.2018
13:26:20
Я ж правильно понимаю, что если мне захотелось в expect class обычных методов / пропертей, то мне придётся писать обычный класс с этими методами и пропертями, делегирующий всё остальное в expect class? Или это таки делается проще?

Denis
16.08.2018
13:26:54
Добрый день

подскажите, если ли смысл использовать rx при разработке android приложений на котлине

или лучше есть замены РХ`у в самом котлине?

I
16.08.2018
13:29:03
Добрый день
если задачи будут сложные и надо серьёзно работать с потоками, то лучше RX

Google
Anton
16.08.2018
13:30:03
Если надо серьещно работать то нужен не рх а конкарент апи

I
16.08.2018
13:30:53
а как-же корутины?
в корутинах нет тех операторов и возможностей, которые есть в рх

Denis
16.08.2018
13:32:15
и как получается что-то толковое написать?
Пока не очень удобно, так как сама экосистема еще не доконца развита. Недавно нарывался на креши компилятора и пока не знаю что с этим делать. Но в целом доволен. Считаю, что за чистой архитектурой и котлином будущее мобильной разработки.

Quantum Harmonizer
16.08.2018
13:32:16
подскажите, если ли смысл использовать rx при разработке android приложений на котлине
Обычно нет. Для асинхронности есть корутины и CompletableFuture.

Глеб
16.08.2018
13:32:44
в корутинах нет тех операторов и возможностей, которые есть в рх
допустим нет операторов, но возможностей даже поболее будет

Nanodesu
16.08.2018
13:32:52
Всем привет. Хочу попробовать реализовать класс который будет отвечать за исполнение async и возвращать результаты в том порядке, в котором Deferred были исполнены, а не объявлены(чтобы например избежать ситуаций при которых первый Deferred может висеть 20 секунд, а остальные исполнятся за 1 секунду и нам придётся ждать выполнения первого и терять время). Собственно попробовал сделать два варианта(Kotlin 1.2.60): Первый принимает на вход коллекцию Deferred и достаёт оттуда результаты в порядке выполнения(вот код сразу с примером использования: https://pastebin.com/0HiNCmKC В этом случае всё работает корректно и Deffered выполняются параллельно, но при этом создавать коллекцию Deferred нужно заранее. Второй вариант принимает на вход коллекцию объектов с которыми необходимо провести манипуляции и функцию через которую нужно пропустить каждый из этих объектов(что синтаксически выглядит удобнее): https://pastebin.com/naT8wNWt В этом случае параллельно выполняется ровно по 3 Deffered(почему именно 3 - загадка, может там внутри какой-то тредпул из 3х тредов?) Собственно вопрос - почему во втором случае Deffered не исполняются все одновременно и как этого избежать?
Привет. Вчера говорил о проблеме с тем, что корутины странно работают на функциях которые мы передаём в качестве параметра. Мне посоветовали попробовать использовать каналы, собственно я попробовал и это не помогло. Всё так-же параллельно исполняется ровно 3 deferred. Имплементация с примером использования: https://pastebin.com/rXjVzRmn

Denis
16.08.2018
13:33:49
чёрт

я окончательно запутался

кто на клин архитектуре на котлине использует rxjava2?

Denis
16.08.2018
13:37:11
вот у меня есть несколько слоёев. как мне из presentation отправить данные в data и вернуть true/false обратно

RxJava2?

I
16.08.2018
13:37:31
допустим нет операторов, но возможностей даже поболее будет
спорить не буду, эта тема в одном из подкастов подлодки очень хорошо раскрыта и там вроде даже кто-то из jetbrains был в гостях и признал, что во-первых нет смысла сравнивать корутины и px это немного разные вещи, во-вторых возможности px намного больше в силу того что эта либа с большой кучей функций, в-третьих внутрн корутины и px устроены очень по-разному, из-за этого разная производительность

Konstantin
16.08.2018
13:37:55
RxJava2?
Сразу 3 лучше

Konstantine
16.08.2018
13:38:04
RxJava2?
В чем вопрос? Нужно ли использовать Rx? Нет, это по желанию.

Denis
16.08.2018
13:38:34
В чем вопрос? Нужно ли использовать Rx? Нет, это по желанию.
вопрос в том как прваильно это сделать

Konstantine
16.08.2018
13:39:08
вопрос в том как прваильно это сделать
Возвращаешь Single/Observable/Flowable/еще что и обрабатываешь

Google
Denis
16.08.2018
13:39:34
т.е. всё таки RxJava2?

Quantum Harmonizer
16.08.2018
13:40:09
т.е. всё таки RxJava2?
чёрт побери, каждый сам выбирает

Denis
16.08.2018
13:41:08
Каждый сам выбирает писать весь код в activity или же писать на mvp и т.д., правильно?

Quantum Harmonizer
16.08.2018
13:41:34
Denis
16.08.2018
13:41:47
Но почему то все стараются выносить код из активити который не относится к вьшке

Ilya
16.08.2018
13:42:02
интересно почему

Denis
16.08.2018
13:42:03
Был вопрос, возмодно немного размытый, потому что ещё плаваю в теме. Поэтому и задаю вопросы чтобы разобраться

Почему так сложно нормально ответить без сарказмов или хотя бы сказать что гуглить

Quantum Harmonizer
16.08.2018
13:43:37
ответили вроде, выбрать придётся самому

Denis
16.08.2018
13:43:54
Исходя из чего выбирают?)

Глеб
16.08.2018
13:44:11
Denis
16.08.2018
13:44:14
Вот у меня клин, несколько слоев

Ilya
16.08.2018
13:44:18
Может сначала стоит определить цель своих изысканий, а потом уже решать что использовать из инструментов для ее достижения?

Bogdan
16.08.2018
13:44:44
Исходя из чего выбирают?)
Исходя из набора кучи переменных которых мозгу нада проанализировать

Quantum Harmonizer
16.08.2018
13:44:47
Исходя из чего выбирают?)
хочется жрать говно — RxJava, хочется писать красиво — корутины, любишь Java — CompletableFuture

Виктор
16.08.2018
13:44:48
вскользь упоминалось про перформанс корутин vs rx кто кого в этом противостоянии?

Andrew
16.08.2018
13:45:10
т.е. всё таки RxJava2?
Корутинки -- нативная фича котлина, которая позволяет тебе писать асинхронщину и раскидывать её по потокам при надобности. Кроме того, там есть каналы, которые дают push-модель, несколько похожую на Observable. Rx при этом ещё имеет тучу операторов, которые для корутин ещё не заимплеменчены никем в виде либы. Часть из них тривиальна, часть вызывает трудности. Итого если ты rx используешь по большей части для раскидывания задач по фоновым тредпулам -- тебе достаточно будет корутин и каналов. Если ты юзаешь оттуда нечто совсем уж нетривиальное -- то оставайся на rx.

Denis
16.08.2018
13:45:25
Окей, кейс. У меня клин, несколько слоев. Пользователь ввел данные и хочет их сохранить, мне нужно перекинуть данные между слоями и потом вернуть результат, но это сделать таким образом, чтобы код был тестируемым и в будущем расширяемым

Google
Admin
ERROR: S client not available

I
16.08.2018
13:46:26
вскользь упоминалось про перформанс корутин vs rx кто кого в этом противостоянии?
ответ зависит от задач, которые решаются, лучше послушать подкаст

Denis
16.08.2018
13:47:28
Quantum Harmonizer
16.08.2018
13:47:58
С
by default — корутины

Виктор
16.08.2018
13:49:20
благодарю

I
16.08.2018
13:49:46
можно ссылку?
https://www.patreon.com/podlodka

Глеб
16.08.2018
13:49:49
56 похож, спасибо

I
16.08.2018
13:50:23
благодарю
да или там где по kotlin native говорили, в каком-то из них, там разработчик jetbrains был

ребят как в котлине правильно сделать цикл для val testList: List<String>? и чтобы при этом в цикле можно было менять значения? Смотрел тут https://stackoverflow.com/questions/34608551/in-kotlin-how-do-you-modify-the-contents-of-a-list-while-iterating но iterate.set не пашет

I
16.08.2018
13:55:26
MutableList
у меня есть такой набор строк text.split(";") как его правильно преобразовать в Mutable учитывая, что он может быть null?

Quantum Harmonizer
16.08.2018
13:56:33
сам text
(text ?: "").split...

Andrew
16.08.2018
13:56:46
text?.split(";")?.toMutableList() ?: mutableListOf<String>()

Bogdan
16.08.2018
13:56:49
Google
I
16.08.2018
13:57:08
(text ?: "").split...
спасибо

Глеб
16.08.2018
14:08:33
(text ?: "").split...
я тут случайно обнаружил extension-функцию orEmpty(), применимую к nullable-спискам и строкам.

Nanodesu
16.08.2018
14:10:45
попробуй передать в async свой CoroutineContext, к примеру async(newFixedThreadPoolContext(100)){}
О, вроде как помогло. Спасибо, только я так и не понял, что не так с контекстом, если его не указывать явно и почему эта проблема возникает только с функциями, которые мы передаём

Глеб
16.08.2018
14:11:52
Там в кишках можно посмотреть, как у него размер выбирается, но итоговое число небольшое совсем

Nanodesu
16.08.2018
14:12:53
Глеб
16.08.2018
14:13:26
Ага, ок надо будет подробнее это раскурить
попробуй fun <T, R> channeledCalls(initColl: Collection<T>, suspend function: (T) -> R): Iterator<R>

Страница 812 из 982