@kotlin_lang

Страница 146 из 982
Алексей
23.05.2017
15:42:34
https://stackoverflow.com/questions/38942514/simple-java-program-100-times-slower-after-plugging-in-usb-hotspot https://youtrack.jetbrains.com/issue/KT-15491

я указал ссылки которые похожи на мою проблему

но решение со stackoverflow не работает

у меня нет возможности проверить будет ли время компиляции меньше скажем по wi-fi или по ethernet, но когда подключен usb модем все тормозит

Google
Алексей
23.05.2017
15:48:24
нет всегда

также я не знаю как будут обстоять дела с другими usb модемами, если что, то у меня yota usb-модем

единственное в чем я уверен - это то, что проблема будет воспроизведена если у вас: ОС: windows 7 x64 SP1 IDE: intellij idea Способ подключения к интернету: usb модем yota То в таком случае при отключенном интернете время сборки будет 1 секунду, а при включенном интернете время сборки будет 15 секунд В качестве проекта для сборки используется (https://kotlinlang.org/docs/tutorials/getting-started.html)

Combot
23.05.2017
16:12:14
combot.org/chat/-1001032833563

Umren
23.05.2017
16:28:03
Алексей проблема странная и я почти уверен она очень простая, создай баг репорт на идею или в слак сходи у разработчиков спроси

тут видимо такого никто не видел)

https://youtrack.jetbrains.com/issues/IDEA

AliasAngel
23.05.2017
16:30:15
hola!

hello!

Алексей
23.05.2017
16:49:05
Алексей проблема странная и я почти уверен она очень простая, создай баг репорт на идею или в слак сходи у разработчиков спроси
я считаю проблема в JPS, я не являюсь профессиональным программистом, но это проблема за гранью мого сознания)

Umren
23.05.2017
16:49:58
поэтому стоит создать issue, навряд ли проблема в jps - она тупая как пробка

Google
Eugene
23.05.2017
17:50:28
Всем, привет

Ребята, а подскажите чего у меня не так с конфигурацией идеи и котлина. Ситуация следующая: стоит toolbox, через который установлена идея 2017.1.3 ультимейт. Я решил пройти Kotlin Koans, установил соответствующие плагины. Делаю первый таск, жмякаю по кнопке проверить решение, а мне в итоге идея выдает вот такое https://www.dropbox.com/s/u25tx75aaxwjlsx/Screenshot%202017-05-23%2023.53.09.png?dl=0

да, все это делается в макоси

Михаил
23.05.2017
18:01:46
Похоже на ошибку компиляции

Какой код пытаешься сбилдить?

Eugene
23.05.2017
18:02:55
код, вот такой fun start(): String = "OK"

ругается вот в этой части package koans.util fun String.toMessage() = "The function '$this' is implemented incorrectly" fun String.toMessageInEquals() = toMessage().inEquals() fun String.inEquals() = this + ":" + if (mode == Mode.WEB_DEMO) " " else "<br><br>" private enum class Mode { WEB_DEMO, EDUCATIONAL_PLUGIN } private val mode = Mode.EDUCATIONAL_PLUGIN

по виду похоже на то что, где-то какие-то настройки неправильно сделаны

но вот где, не совсем понятно

может ли быть проблема в том что версия kotlin plugin в idea не соответствует самой версии idea?

Михаил
23.05.2017
18:06:07
Нет

Плагин котлина 1.1.2-3?

Eugene
23.05.2017
18:06:58
1.1.2-release-IJ2017.1-1

Михаил
23.05.2017
18:07:41
А студия ничего не подчеркивает в коде?)

Eugene
23.05.2017
18:07:43
в репозитории плагинов Котлин плагин доступен с вот такой версией v1.1.2-release-IJ2017.1-2

Михаил
23.05.2017
18:07:54
По виду вроде должно компилится

Eugene
23.05.2017
18:07:54
вообще ничего не говорит

мало того, она дает даже на определение оператора plus перейти

попробую сейчас кеш заинвалидировать

Михаил
23.05.2017
18:10:20
Попробуй в методе inequals возращаемый тип указать

Google
Eugene
23.05.2017
18:14:03
не, не помогло

он реально зачем-то ломится по ненужному пути

Admin
ERROR: S client not available

Eugene
23.05.2017
18:14:36
точнее по несуществующему

попробую плагин обновить, если не поможет, то в баг трекер пойду писать

Руслан
23.05.2017
18:25:49
можно просто скачать репозиторий коанов и там запускать обычный junit

Igor
23.05.2017
20:03:15
Можно как-то короче переписать (это синглтон с кастомной инициализацией)? Просто свойство не подходит, тк оно будет var, что странно выглядит (да и IDEA подсвечивать будет). companion object { val instance: CustomSingleton get() = _instance private lateinit var _instance: CustomSingleton fun initialize(newInstance: CustomSingleton) { _instance = newInstance } }

Михаил
23.05.2017
20:26:25
Могу ток другую реализацию синглтона подогнать)

class Singleton private constructor() { companion object { val instance = Singleton() } }

Dmitry
24.05.2017
05:58:55
Всем привет! В который раз открыл доку котлина в месте про sealed классы https://kotlinlang.org/docs/reference/sealed-classes.html , но так и не смог пока представить простой пример, где было бы удобно их использовать. Может кто-нибудь привести ситуацию?

в рамках андройда например, кто-либо использовал их в каких нибудь случаях?

Eugene
24.05.2017
06:06:30
Dmitry
24.05.2017
06:13:21
@evstep отличная статейка, спасибо! ) Понятней стало

Dmitry
24.05.2017
06:23:37
Quantum Harmonizer ? непонятно, зачем такой класс может пригодиться. Или это просто пример?

Руслан
24.05.2017
06:30:17
ну вот у меня в коде используется

sealed class CommandResult data class SuccessResult(val message: String = "") : CommandResult() data class FailureResult( val message: String = "", val exitCode: Int = 0, val exception: Throwable? = null ): CommandResult()

я из метода возвращаю CommandResult, и пользователь соответсвенно будет проверять это SuccessResult или FailureResult. fun str(cr: CommandResult): String = when (cr) { is FailureResult -> "Failure" is SuccessResult -> "Success" } Как видишь тут не пришлось делать else branch, т.к. компилятор точно знает что будет одно из двух

Igor
24.05.2017
06:34:21
в рамках андройда например, кто-либо использовал их в каких нибудь случаях?
По факту enum на стероидах, когда у разных вариантов должны быть разные параметры. Это такая реализация “union типа” (на вики есть статья, могу кинуть пару ссылок). Конкретно для “android” не знаю, где пригодится, а вот для “бизнес логики” я часто использую. Вот одни пример “нужно записать ачивку в игре, у некоторых ачивок есть дополнительные параметры, а у некоторых нет” sealed class Achievement object LoginWithVk : Achievement() object BecomeVip : Achievement() class NewRecord(val score: Int) : Achievement()

fun unlockAchievement(achievement: Achievement): Single<Unit> = when (achievement) { LoginWithVk -> just(println("Login with VK")) BecomeVip -> just(println("Become VIP")) is NewRecord -> just(println("New Record, score = ${achievement.score}”)) }

Google
Андрей
24.05.2017
07:03:55
Quantum Harmonizer ? непонятно, зачем такой класс может пригодиться. Или это просто пример?
Это, по сути, монада Maybe из фунциональных языков. Много где используется либо в таком виде, либо в немного видоизмененном (тот же Optional из Джава 8, где вместо None и Just используется проверка на ifPresent)

Igor
24.05.2017
07:09:59
Кстати да, Dmitry, почитай “Изучай Haskell во имя добра!” - многие вопросы отпадут сами собой.

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