
Bogdan
21.08.2018
19:13:23
и просто берется из него \клдется на стек\пишется в переменую и т.д

Dibro
21.08.2018
19:14:08

Dmitry
21.08.2018
19:14:21
Будет красный код

Google

Bogdan
21.08.2018
19:14:27
котлине генерирует совместимый с джаваой байткод, а не джава код (как-то так)

Dibro
21.08.2018
19:16:06
видимо декомпилятор упадет тогда

Bogdan
21.08.2018
19:16:21
Будет красный код

Vladimir
21.08.2018
19:16:29

Bogdan
21.08.2018
19:16:32

OlegKrikun
21.08.2018
19:46:43
Это только у меня на 1.2.61 компиляция чуть ли не в два раза дольше? о_О
или мне машину проверить? =)

Maxim
21.08.2018
21:18:28

OlegKrikun
21.08.2018
21:19:01
Да не, всё норм =) Хром чот решил пожрать проца, котлин непричом =)

Google

Sergey
22.08.2018
07:48:26
@noraltavir Осилил в итоге gradle dsl со своей проблемой?

Alexander
22.08.2018
07:48:40
неа. Переписал на груви
Пока нет времени возиться.

Sergey
22.08.2018
07:50:09
А смотрел на такую штуку withGroovyBuilder { } ?

Alexander
22.08.2018
07:51:07
Нет, но это по-моему оверкил. У меня нет задачи использовать kotlin dsl. Просто хотелось попробовать.

Sergey
22.08.2018
07:52:12
оно работает. но красоты и удобства нет

Alexander
22.08.2018
07:52:34
оно это kotlin dsl?
Пока не очень впечатляет. Вообще, я в последнее время делал несколько DSL для котлины и очень впечатлен обилием возможностей. Котлиновские расширения по сравнению с грувевыми кложурами с бесконечными rehydrate - это конечно просто неописуемое улучшение.

Sergey
22.08.2018
08:08:18
конкретно gradle dsl c withGroovyBuilder.
Kotlin dsl хорош, у нас уже достаточно много его в проде бегает

Денис
22.08.2018
08:35:15
Добрый день. Нужно сравнить опциональные Float. Делаю проверку на null перед сравнением вот так вот:
val sum: Float? = null
val partnerMinOrder: Float? = null
...
if (sum!= null && partnerMinOrder != null){
if (sum < partnerMinOrder){
// логика 1
}else{
// логика 2
}
}
Но этот код некрасивый. Можно ли на котлине переписать это более лаконично? Буду благодарен за советы

Quantum Harmonizer
22.08.2018
08:35:57

Денис
22.08.2018
08:36:28

Vitalii
22.08.2018
08:36:31
Если их сделать null-safe, то у тебя будет одна проверка.

Денис
22.08.2018
08:37:18

Bogdan
22.08.2018
08:38:04

Andrew
22.08.2018
08:38:47
val sum: Float? = null
val partnerMinOrder: Float? = null
...
sum ?: return
partnerMinOrder ?: return
if (sum < partnerMinOrder){
// логика 1
}else{
// логика 2
}

Igor
22.08.2018
08:39:05

Maxim
22.08.2018
08:40:04

Vitalii
22.08.2018
08:40:29
if (sum < partnerMinOrder){
// логика 1
} else if (sum > partnerMinOrder) {
// логика 2
}
Опционально
} else {
return; // или логика 3
}

Денис
22.08.2018
08:41:10

Google

Костя
22.08.2018
08:41:14
а почему не использовать run, let ?
например

Andrew
22.08.2018
08:41:26
Для else { return } пример выше. Если есть там что-то другое — без шансов.

Костя
22.08.2018
08:41:34
и дальше работать уже внутри функции с non-null value
я бы делал так

Vitalii
22.08.2018
08:41:58

Andrew
22.08.2018
08:42:07

Денис
22.08.2018
08:42:26

Andrew
22.08.2018
08:42:27

Костя
22.08.2018
08:42:32
а with не работает с несколькими сразу ?

Vitalii
22.08.2018
08:42:42

Костя
22.08.2018
08:42:53
уже не помню точно, котлина нету под рукой )

Денис
22.08.2018
08:43:02

Maxim
22.08.2018
08:43:38

Andrew
22.08.2018
08:44:00
В смысле?
Мне, какбэ, нечего оставлять.
Сорян, с топик-стартером перепутал.
Энивей, без раннего выхода и вынесения части кода в отдельную функцию с non-null параметрами я без идей, как вышеуказанный код менять.

Костя
22.08.2018
08:44:14
ну для двух точно бы вложенные сделал бы, и вынес в отдельный метод, для 4-х конечно выглядеть будет адово вложенность, это верно (

Vitalii
22.08.2018
08:45:49
Хотя всё равно стрёмно ?

Maxim
22.08.2018
08:47:29

Google

Andrew
22.08.2018
08:48:25
Зависит от того, на чём хочется сосредоточить внимание в функции и насколько null там ожидаем. Если это краевой случай, то ранним возвратом можно описать контракт функции (как require, только без исключения). Заглянув в код, другой человек сразу увидит это, ему не придётся парсить все ифы по ходу пьесы.

Igor
22.08.2018
09:35:34
Искал на разных стаковерфлоу, единственное, что стало ясно - эта привязка должна быть с 606 блока, на скрине
А в этих двух инпутах отображались бы широта и долгота того места, куда я двинул маркер

Andrew
22.08.2018
09:37:42
Звучит как вопрос для @kotlin_mobile

Igor
22.08.2018
09:38:08
Ну это не мобилка, это веб)

Anton
22.08.2018
09:38:10
это не андроид

Admin
ERROR: S client not available

Andrew
22.08.2018
09:38:43
Слона-то я и не заметил.

Igor
22.08.2018
09:39:41
Возможно, я что-то просто по синтаксису не догоняю, не могу связать эти два инпута в блоке onChangeFunction

Bogdan
22.08.2018
10:05:01

Igor
22.08.2018
10:07:20
Тут нада знать гугл мап
https://developers.google.com/maps/documentation/javascript/reference/marker
Ну их АПИ мне не сильно помогло

Никита?❄️
22.08.2018
10:45:05
вопрос таков: в IDEA/Android Studio после врубления Power Save Mode отрубается автопроверка синтаксиса. по-сути, когда мне нужно сделать проверку - мне надо вырубить энергосбережение, подождать проверку, отрубить его. а есть ли способ вручную запустить эту проверку в power save (видимо, какой-то комбинацией клавиш)?

Quantum Harmonizer
22.08.2018
10:45:27

Никита?❄️
22.08.2018
10:45:38

Igor
22.08.2018
10:49:46
Пасаны, а как вам идея добавить guards для when (типа как в scala ? (не кидайтесь камнями))?
А то иногда, после when(...) приходится уточнять, вложенными if

Vishnyakov
22.08.2018
10:51:15

Quantum Harmonizer
22.08.2018
10:51:30

Никита?❄️
22.08.2018
11:06:26

Google

Vishnyakov
22.08.2018
11:06:56

Никита?❄️
22.08.2018
11:07:11

Vishnyakov
22.08.2018
11:07:11
ибо у меня на куда более слабом железе ничего не лагало на линухе
винда... проехали

Никита?❄️
22.08.2018
11:07:28
=)

Sergey
22.08.2018
11:25:27

Никита?❄️
22.08.2018
11:26:21

Di7aK
22.08.2018
11:26:22
она лагает от озу

Никита?❄️
22.08.2018
11:26:42
И если что можно в своп уйти

Di7aK
22.08.2018
11:26:58
у меня как то было 4гб, лагало шописта, добавил еще на 4гб и стало все собирать за 12 сек

Никита?❄️
22.08.2018
11:27:52
То есть ты написал if - оно подвисло

Di7aK
22.08.2018
11:28:19
с таким встречался но редко

Никита?❄️
22.08.2018
11:28:30
Внутри него написал переменную и нажал точку - подвисло
Это спустя пару часов работы начинается

Di7aK
22.08.2018
11:28:46
в основном из за той же озу, тоесть после разворота студии спустя два дня

Никита?❄️
22.08.2018
11:29:14
Ну не 32 гига же ставить

Di7aK
22.08.2018
11:29:20
а проц у меня вообще заглушка