
Alexander
16.10.2018
10:42:26
Но это наверное лечится прописыванием зависимостей в его конфигурацию

Andrew
16.10.2018
10:45:18
Я JMH не тыкал никогда, потому конкретно по нему советов не дам. Просто картина в общем знакомой показалась — джавовый плагин не подружился с котлиновской мультиплатформой :)

Alex
16.10.2018
10:47:56
Я его уже увы, потерял

Google

Alexander
16.10.2018
10:57:47
До мультиплатформы и у меня все работало
Вот так работает:
dependencies{
jmh 'org.jetbrains.kotlin:kotlin-stdlib-jdk8'
}
правда идея подсвечивает много чего красным

Andrew
16.10.2018
11:22:47

Alexander
16.10.2018
11:24:02
Какой-то косяк с идеей. Не видит зависимостей. Если руками прописать, то все нормально

Andrew
16.10.2018
11:24:35
Причём я иногда хожу и забираю Kotlin-плагин для 1.3.20 для идеи с тимсити, проблема до сих пор актуальна в свежих билдах.

Vladimir
16.10.2018
11:24:50

Alexander
16.10.2018
11:26:02
Ну работает и хорошо. Мне эти тесты раз в пятилетку нужны. Совсем без них низзя.

Mikhail
16.10.2018
11:26:49

Semyon
16.10.2018
13:23:33
Добрый день!
listOf(1,2,3)
.groupingBy { it }
.aggregate{_, accumulator, _, _ -> 0}
Type inference failed
Почему?

Alexander
16.10.2018
13:37:21
Because.
Не понятно, какого именно типа не хватает

Sergey
16.10.2018
13:38:10

Alexander
16.10.2018
13:38:35
Ну я посмотрел по типам, вроде должно быть очевидно

Google

Sergey
16.10.2018
13:39:05
не

Semyon
16.10.2018
13:39:18

Sergey
16.10.2018
13:39:30
listOf(1,2,3)
.groupingBy { it }
.aggregate{_, accumulator: Int?, _, _ -> 0}

Alexander
16.10.2018
13:39:52
Ну да
Но теоретически мог бы и вывести. Другое дело, что это не нужно

Sergey
16.10.2018
13:40:22
в 1.3 может будет выводить такое, но не факт

Alexander
16.10.2018
13:41:11
в play.kotlin уже 1.3-RC есть, можно пробовать

Sergey
16.10.2018
13:42:49
там нужно флаг включить для нового type inference
не уверен что он включен в сандбоксе

Alexander
16.10.2018
13:44:05
Все эти type inference - это от лукавого. Часто удобно, но если не работает - прописываешь тип и не мучаешься

dimiii
16.10.2018
13:44:39

Alexander
16.10.2018
13:45:17
Он не всегда полезен. IDE конечно подсвечивает типы, но без нее читаемость часто падает

Quantum Harmonizer
16.10.2018
13:46:22

Sergey
16.10.2018
13:46:31
можно проверку включить чтобы для публичных методов просило явно указывать тип

Alexander
16.10.2018
13:47:18

Mikhail
16.10.2018
14:22:13
Как человек, который злоупотребляет method reference и чейнингом через .let очень ждунового type inference в стейбле
иногда прям больно, был такой случай:
fun <T> foo(t: T)
fun <T> foo(list: List<T>)
вместо listofT.let(::foo) пришлось явно указывать listofT.let { foo(it) }
забавно было
жмякаешь quick fix convert lambda to reference и у тебя типы не резолвятся

Sergey
16.10.2018
14:26:04
у меня suspend функции все отваливаются по референсу

Google

Quantum Harmonizer
16.10.2018
14:28:14

Жабра
16.10.2018
14:28:14

Mikhail
16.10.2018
14:28:46

dimiii
16.10.2018
14:28:47

Mikhail
16.10.2018
14:29:43
мало того что этот дурацкий :: приходится писать, так еще и не работает иногда

Andrey
16.10.2018
14:52:12

Алексей
16.10.2018
14:53:37

Gedion
16.10.2018
14:53:41
Hey guys
Can you send me resources I would need to learn Kotlin
I am a beginner
I only have experience with python

Алексей
16.10.2018
14:54:45
Hi

Gedion
16.10.2018
14:55:23
Hi
Hey
Thanks, but do you have videos
Links about multi platform programming

Quantum Harmonizer
16.10.2018
14:55:27
да и чтобы совместимость не сломать ненароком

Quantum Harmonizer
16.10.2018
14:55:38

Max
16.10.2018
14:56:06

Gedion
16.10.2018
14:56:16

Andrey
16.10.2018
14:57:10
Полезное замечание, я вот и не знал
И это в Kotlin ещё inference слабый, так как система типов не разрешима в общем случае. Во всяких языках, основанных на Hindley–Milner type system, вообще очень редко требуется типы прописывать. Там это соглашение сильно форсят.

Max
16.10.2018
15:00:01
Okay thanks ??
Usually udacity courses by google is good. I wasn't see this course, but maybe it will be good for you. Good luck :)
https://www.udacity.com/course/kotlin-bootcamp-for-programmers--ud9011

Gedion
16.10.2018
15:01:05

dimiii
16.10.2018
15:05:33

Google

Max
16.10.2018
15:06:34

dimiii
16.10.2018
15:07:30

Gedion
16.10.2018
15:15:17

Aleksandr Petrov
16.10.2018
16:50:22
Добрый день, я делаю тестовый проект для изучения Kotlin'a. Мог бы кто-то мне помочь и отревьюить код?

Aleksandr
16.10.2018
16:52:59
а в чем смысл?

Aleksandr Petrov
16.10.2018
16:56:40
а в чем смысл?
Для меня это новый язык, хочу изучить best practice и понять, что может быть делал неправильно

Глеб
16.10.2018
16:57:22

Admin
ERROR: S client not available

dimiii
16.10.2018
16:59:06

Aleksandr Petrov
16.10.2018
17:00:51

Глеб
16.10.2018
17:01:47

dimiii
16.10.2018
17:02:52

Глеб
16.10.2018
17:02:53
!! - оно-же даже выглядит как костыли. Но если ты реально обошелся всего парой использований в первом проекте, то у тебя талант!
или ?:
Так и ?. в туже кучу, но это всё сокращение для if(a!=null)

Aleksandr Petrov
16.10.2018
17:03:34
Проверить на null :) Как-же ещё.
То есть лучше в куске кода ниже лучше заменить на `if`-ветку:
val filterTypeValue = call.request.queryParameters.get("filter")!!
var filterType: FilterType
try {
filterType = FilterType.valueOf(filterTypeValue.toUpperCase())
} catch (error: IllegalArgumentException) {
call.respond(HttpStatusCode.BadRequest, ErrorResult("Unknown filter type"))
return@get
}

Глеб
16.10.2018
17:04:19
да, ибо если в query не будет filter, то сие упадёт с NPE

Aleksandr Petrov
16.10.2018
17:04:49

Глеб
16.10.2018
17:05:12
нет
свалится раньше

Google

Глеб
16.10.2018
17:05:30
кажется...
должно, по крайней мере

Aleksandr Petrov
16.10.2018
17:06:18
Тут есть !!, поэтому не валится (проверял), а вот резолвинг в enum-константу и может.

Глеб
16.10.2018
17:06:55
Значит там пустое значение, а не null. Блин, надо прям проверить

dimiii
16.10.2018
17:07:15

Aleksandr Petrov
16.10.2018
17:08:19

Глеб
16.10.2018
17:08:30
валится с NPE на присваивании

Aleksandr Petrov
16.10.2018
17:08:56
Спасибо, учту

Igor
16.10.2018
17:09:07
https://i.gyazo.com/f2a970f4baecf3605512ff7b7a1f7795.png

Глеб
16.10.2018
17:09:37
Спасибо, учту
а ещё можешь залить куда-нибудь на гитхаб поделие и кинуть ссылку
Думаю, найдутся любители жарких дебатов

dimiii
16.10.2018
17:10:23

Aleksandr Petrov
16.10.2018
17:13:05

Larymar
16.10.2018
18:23:37
подскажите как добавить элемент в лист
у меня не резолвит метод
а java листы использовать не хочу, хотя могу

Igor
16.10.2018
18:24:51
val dict: MuttableList<Node>...