
Денис
13.06.2018
14:35:37
Ага
Рекомендую при таких вопросах открывать доку с списком методов/extension-функций коллекции, там обычно плюс-минус всё можно найти.

Konstantin
13.06.2018
14:39:09
^^
http://jussi.hallila.com/Kollections/

Александр
13.06.2018
14:40:36

Google

Денис
13.06.2018
14:41:24
О, прикольная страничка, надо схоронить

Никита?❄️
13.06.2018
15:13:54
ребят, как лучше всего поступить, когда есть сущность на 10+ полей?
замутить огромный конструктор на 10 полей, мутить билдер или как?
по-сути получается билдер с ещё 10 полями и 10 методами - нелаконично

Anton
13.06.2018
15:15:48
зачем билдер если есть дефолтные параметры/именнованые аргументы

Bogdan
13.06.2018
15:16:18

Никита?❄️
13.06.2018
15:16:24
спасиб)

Pavlo
13.06.2018
15:16:57
кроме того, если есть возможность, разбить на более простьіе логичньіе сущности

Bogdan
13.06.2018
15:17:07
нл билдер не поможет

Никита?❄️
13.06.2018
15:17:37
пора пробовать DSL)

Quantum Harmonizer
13.06.2018
15:17:58
DSL — тот же билдер, мутабельная печалька.

Bogdan
13.06.2018
15:18:02

Google

Никита?❄️
13.06.2018
15:18:30
там 7 из 11 полей мутабельны
а ещё 2 - другие сущности >_<

Bogdan
13.06.2018
15:18:59

Никита?❄️
13.06.2018
15:19:10
спасиб)

Bogdan
13.06.2018
15:19:30
2 передаещь в йункцию
ну думаю и сам знаешь)
я думал как то через интерфейс и иннер класс, сделать иммутабельным. Но если нужно получить именно класс, то не прокатит

Sergey
13.06.2018
15:34:20
https://github.com/JetBrains/kotlin/releases/tag/v1.2.50 тащите
>Debugger fails to show decomposed suspend lambda parameters
неужели пофиксили?

whalemare
13.06.2018
15:41:13
Было бы здорово, если б фиксанули

dimiii
13.06.2018
16:20:52
Что-то непонятное происходит в моем REPL:
import kotlinx.coroutines.experimental.future.*
val fo = future { object { val hello = "world" } }
error: 'public' property exposes its 'local' type argument <no name provided>
val fo = future { object { val hello = "world" } }
^
val o = object { val hello = "world" }
val fo = future { o }
error: 'public' property exposes its 'local' type argument <no name provided> - неприятная штука, кто что скажет про неё?

Igor
13.06.2018
16:24:19


dimiii
13.06.2018
16:28:49
В целом, картина следующая - если использовать конструкцию future { object {...}} в коде программы - все компилируется и работает без ошибок. В случае repl, kscript ругается непонятным сообщением. Так-то у меня костыль есть в виде val o = object {}; val fo = future { o }, попробую посмотреть, что есть в issue трекере на эту тему.
Если кому интересно, откуда возникла такая порнография - это я экспериментирую с прототипом аналога ансибл, в котором модель вычислений основывается на dataflow concurrrency вместо портянок с макросами и подстановками. kscript получается из плейбуки


Roman
13.06.2018
19:19:34
Товарищи, я не до конца понимаю как правильно пользоваться null safety. Вот есть у меня data class Something(var url: String, var fooList: List<Foo>?) fooList может быть null. А в методе saveSomething() мне надо сохранить something если fooList не null. Как это лучше сделать?
А в ином случае кинуть exception

Google

Quantum Harmonizer
13.06.2018
19:23:24
зачем вообще использовать нуллабельные листы?

Roman
13.06.2018
19:27:55

Axrorxo'ja
13.06.2018
19:29:14

Roman
13.06.2018
19:32:32

dimiii
13.06.2018
19:53:34
RTFM http://kotlinlang.org/docs/reference/object-declarations.html https://youtrack.jetbrains.com/issue/KT-19862

eugene
13.06.2018
19:55:37
Здравствуйте, подскажите, kotlin 1.2.50 вышел, правильно?

Boris
13.06.2018
20:00:41
А в 1.3 что интересного обещают? Ну, помимо самов

Bogdan
13.06.2018
20:00:55

1337
13.06.2018
20:03:26
а чем корутины профитнее того же реактора? или они не пересекаются?

Quantum Harmonizer
13.06.2018
20:04:03

Vhäldemar
13.06.2018
20:04:12
тем, что они корутины

1337
13.06.2018
20:04:17
это ясно, а по факту чем?

Quantum Harmonizer
13.06.2018
20:04:36

eugene
13.06.2018
20:04:36

Bogdan
13.06.2018
20:04:59

Ivan101
13.06.2018
20:05:28
тем, что это языковая фича
я где-то в докладе видел, что это не языковая фича, а либа. suspend - языковая фича, которая создана для поддержки либы
как-то так

Bogdan
13.06.2018
20:05:42

dimiii
13.06.2018
20:05:42

Google

1337
13.06.2018
20:05:50
есть два проекта, в каждом можно без проблем подключить реактор, в одном используются корутины, во втором реактор для одинаковых задач, что лучше пользовать?

dimiii
13.06.2018
20:06:03

Bogdan
13.06.2018
20:06:25
переписывать с рекакта не нада

Quantum Harmonizer
13.06.2018
20:06:51

eugene
13.06.2018
20:06:53

1337
13.06.2018
20:06:57
мне кажется, что реактор более функционален и в любом случае надо будет гонять из mono+flux в корутины и обратно, так что тут чистота не важна

Quantum Harmonizer
13.06.2018
20:07:01

Bogdan
13.06.2018
20:07:15

Quantum Harmonizer
13.06.2018
20:07:17
ой блин, всё сначала

eugene
13.06.2018
20:07:22
и что?
баги могут быть, могут поменять api

Bogdan
13.06.2018
20:07:27

eugene
13.06.2018
20:07:58

Bogdan
13.06.2018
20:08:12

Quantum Harmonizer
13.06.2018
20:08:39

Bogdan
13.06.2018
20:08:48

Ivan101
13.06.2018
20:09:36
для нового проекта с тестами новое api не критично, пока доведешь до продакшена корутины выйдут в релиз =)

Bogdan
13.06.2018
20:10:28
@Harmonizr в джава чатике говорили что у jb хорошие пиар кампании, ка они проглядели насчет експериментального ? ?

Alexander
13.06.2018
20:33:03
А в 1.3 что интересного обещают? Ну, помимо самов
В марте обсуждали:
1. Релиз корутин
2. Инлайн классы
2а. Unsigned арифметика засчёт инлайн классов
3. Ещё немного аннотаций богу аннотаций (JvmDefault)
4. Вынесение всяких вещей в общий доступ
4а. Контракты
4б. Аннотации по выводу типов (NoInfer, Exact и тд)
5. SAM
6. Улучшения выводов типов
7. Перелопачивания компиляторов, чтобы jvm, js и native были ближе к единому целому.
Слайды тут:
https://speakerdeck.com/kug_spb/ekspierimiental-nyie-i-rieliznyie-fichi-v-kotlin-1-dot-3
Голосом и видеорядом:
https://www.youtube.com/watch?v=gwk4rdgr36E
Возможно всё сто раз поменялось, конечно же.

Google

Bogdan
13.06.2018
20:35:41
о нет

Boris
13.06.2018
20:38:33

Ilya
13.06.2018
20:48:46
Лучше пустой лист исползоват
Но это не отменяет того, что сам бэк может прислать list со значением null и тогда дефолтное значение не сработает

Bogdan
13.06.2018
20:50:13

Руслан
13.06.2018
20:50:18
??? Kotlin 1.2.50
Пост в блоге: https://blog.jetbrains.com/kotlin/2018/06/kotlin-1-2-50-is-out/?utm_source=dailykotlin_tl
Changelog на GitHub: https://github.com/JetBrains/kotlin/releases/tag/v1.2.50

Ilya
13.06.2018
20:51:29

Bogdan
13.06.2018
20:52:53

Ilya
13.06.2018
20:53:59
Ну gson из retrofit обрабатывает как есть. Пришло null - запишет null

Quantum Harmonizer
13.06.2018
20:54:48

Ilya
13.06.2018
20:55:15

Quantum Harmonizer
13.06.2018
20:55:59

Kevin
13.06.2018
21:17:36
how can i cast Any to an object Class ?
i have something like this
var myNnn :Any
want to ask to to an Object Class

Atlas
13.06.2018
21:21:10
Someclass::class.java no?

dimiii
13.06.2018
21:22:16

Dibro
13.06.2018
21:22:19

Kevin
13.06.2018
21:22:57
@Dibro I have somthing like this
fun bindview(pool:Any){
//want to convert
}
I have my class
class Users(var name, var id)