@kotlin_lang

Страница 494 из 982
Kirill
18.01.2018
21:15:20
Ну вот тут например ктора нет
да, его перенесли сюда: https://github.com/ktorio

Boris
18.01.2018
21:18:38
Забанили? ? бывает
Так его же читать придется ?

Sergey
18.01.2018
23:08:39
http://openjdk.java.net/jeps/325 где-то я это уже видел

Quarx2k ?
18.01.2018
23:09:50
Так его же читать придется ?
Если там админ, как и в обычной группе ведра, то он банит полностью. Аутист какой-то

Google
Quarx2k ?
18.01.2018
23:29:19
Это была ирония.)
Я к тому, что Рид онли можно же ставить

А не ставит

Fag
19.01.2018
03:11:29
hey guys

what's the singlemost interesting project you have worked on in the kotlin programming language?

Bogdan
19.01.2018
11:16:27
всем привет, кто-то знает что там на счет обработки анотаций? скоро будут? а то есть либы которые от них зависит

Dibro
19.01.2018
11:18:08
kapt

Bogdan
19.01.2018
11:26:17
kapt
только капт?

kapt
или кто то юзал, как с ним вообще, пример

Михаил
19.01.2018
11:27:26
только капт?
а что-то еще нужно?)

все юзают kapt. в нынешних версиях все хорошо работает, бывало всякое, но щас вполне норм

Google
Михаил
19.01.2018
11:32:41
попробую
или имеется ввиду написание своего процессора?

Bogdan
19.01.2018
11:33:29
или имеется ввиду написание своего процессора?
нет, джавовские либы абузять много либ с аннотациями, например ломбок

Anton
19.01.2018
11:34:02
зачем ломбок в котлине?

или они сами тащат в себе ломбок

Bogdan
19.01.2018
11:34:27
в том и дело

Anton
19.01.2018
11:34:56
это не андроид как я понимаю?

Bogdan
19.01.2018
11:35:00
не

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

Dibro
19.01.2018
11:50:19
нет, джавовские либы абузять много либ с аннотациями, например ломбок
дак используются-то бинарники, где ломбок уже все сгенерил

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

Михаил
19.01.2018
11:52:34
ну там наверн речь о своей либе где юзается ломбок

Dibro
19.01.2018
11:53:09
ну там наверн речь о своей либе где юзается ломбок
а они не в отдельных проектах лежат?

Михаил
19.01.2018
11:53:37
не знаю)

Bogdan
19.01.2018
11:59:36
дак используются-то бинарники, где ломбок уже все сгенерил
ну с ломбком понятно, я ьольше боюсь за райтайм обработки, либа большая, и куча зависимостей

Dibro
19.01.2018
12:01:33
ну с ломбком понятно, я ьольше боюсь за райтайм обработки, либа большая, и куча зависимостей
обработка аннотаций нужна только если ты сам используешь такие аннотации в проекте, если их используют зависимости - пофиг

Google
Igor
19.01.2018
12:04:38
Странный вопрос, у тебя есть какие-то альтернативы? Если нет, то юзать конечно (может своих экстеншено написать или поискать готовых).

Bogdan
19.01.2018
12:11:54
Странный вопрос, у тебя есть какие-то альтернативы? Если нет, то юзать конечно (может своих экстеншено написать или поискать готовых).
ну вот я думал, стоит заморочится и дописать обертки. А альтернатив не вижу, думал может я упустил

Roman
19.01.2018
13:21:45
Смотря что нужно из Apache Math. Если статистика, то можно вот: https://github.com/thomasnield/kotlin-statistics

Gleb
19.01.2018
18:30:06
почему на Deferred помимо await() нет классических методов, которые обычно присущи фьючерам? а-ля thenAccept, thenCompose. они бы очень пригодились для миграции с CompletableFuture и прочих

Kira
19.01.2018
18:32:48
//хочу инфиксный метод без параметра.. можно было бы писать стихи на котлине

Andrew
19.01.2018
18:34:22
А зачем? await() же и без того саспендит функцию, то бишь текущая функция продолжит выполняться после появления результата. Цепочки этих всяких .thenCompose() (точнее, их аналог на конечных автоматах) уже сам компилятор выстраивает.

Gleb
19.01.2018
18:35:23
А зачем? await() же и без того саспендит функцию, то бишь текущая функция продолжит выполняться после появления результата. Цепочки этих всяких .thenCompose() (точнее, их аналог на конечных автоматах) уже сам компилятор выстраивает.
для того, чтобы мигрировать легаси-код, написанный на старых фьючерах, без необходимости перелопатить все сверху до низа, чего требует использование suspend-функций

Andrew
19.01.2018
18:36:38
Вроде как нет нужды сразу одним махом всё перелопачивать -- положили runBlocking { ... } в самый низ, а дальше фьючер за фьючером постепенно превращаете в suspend-функции. Разве не так?

Gleb
19.01.2018
18:38:57
Вроде как нет нужды сразу одним махом всё перелопачивать -- положили runBlocking { ... } в самый низ, а дальше фьючер за фьючером постепенно превращаете в suspend-функции. Разве не так?
можно и так, но хотелось бы начать миграцию с другой стороны - с написания нового кода на корутинах, а миграцию того, что есть - проводить постепенно

Andrew
19.01.2018
18:40:21
Для гуавы тоже актуально. А о "старых" CompletableFuture андроид-девелоперы до сих пор мечтают (точнее мечтали, пока не появился Котлин).

С новым кодом вроде как всё ещё проще -- из старого кода торчат фьючеры, новый код их превращает в примитивы для корутин, а при надобности вызвать старый код выдают себя за те же самые фьючеры. Там же интероп в обе стороны с фьючерами, rx и прочими подходами.

Gleb
19.01.2018
18:42:31
> а при надобности вызвать старый код выдают себя за те же самые фьючеры через билдер future?

Andrew
19.01.2018
18:43:20
Да, через билдеры корутин.

В самих корутинах thenAccept, thenCompose совершенно не нужны, это были бы артефакты исключительно для интеропа с фьючерами, а там вполне достаточно трёх функций, упомянутых здесь: https://github.com/Kotlin/kotlinx.coroutines/tree/master/integration/kotlinx-coroutines-guava

SkullzBoy
19.01.2018
22:26:09
English anyone?

Руслан
19.01.2018
22:27:13
Sure, but there are bigger english community with channels about different topics https://kotlinslack.herokuapp.com/

SkullzBoy
19.01.2018
22:27:42
On slack?

Руслан
19.01.2018
22:27:46
Yep

Google
SkullzBoy
19.01.2018
22:27:53
OK ill check there

But i still need help

i created a fun test1 { //do stuff } then i created a fun test2 { //i need to call the test1 here }

How do i call the test1 inside the test2 ??

Руслан
19.01.2018
22:29:30
so first of all you functions not declared in proper way: fun test1() { // code } fun test2() { test1() }

Please read part of documentation related to your question: http://kotlinlang.org/docs/reference/functions.html#function-declarations

SkullzBoy
19.01.2018
22:57:17
You
19.01.2018
22:57:43
Because it's different scope

Руслан
19.01.2018
22:59:10
you should return what you need from test1 to use in test2

SkullzBoy
19.01.2018
23:00:56
fun chamadas(args: Array<String>) { val linha1 = File("voos.txt").readLines() for (line in linha1) { val parts = line.split(':') val nVoo = parts[0].toString() val origem = parts[1] val destino = parts[2] val data = parts[3] } val linha2 = File("reservas.txt").readLines() for (line in linha2) { val parts = line.split(':') val numCC = parts[0].toString() val nome = parts[1] val nVoo = parts[2] val data = parts[3] } } fun exitProcess() { println("Programa terminado") } fun lista() { chamadas() println("Por favor introduza o numero de voo") var Nvoo1 = readLine()!! println("Introduza o dia") var dia = readLine()!! I want to add a for loop: for (line in linha1) { if (Nvoo1 == nVoo && etc.)

Should i return everything i need from the funtion?

Руслан
19.01.2018
23:14:58
Looks like you need to: 1. Introduce class for nVoo, origem, etc: class IdkHowToNameIt(val nVoo: String, val origem: String, ...) 2. Introduce class for numCC, nome, nVoo, etc: `class IdkHowToNameIt2(val numCc: String, ...) 3. split chamadas into 2 functions, each function returns lists: fun chamadas1(): List<IdkHowToNameIt> { // ... } This is very basic programming concepts, so I suggest you to finish some programming courses to be familiar with they.

SkullzBoy
19.01.2018
23:17:26
I could..but i am a student, and the teacher didnt teach most of these stuff, so we are stuck and tdeadline is on monday

I could read documentation and i will do it, but i have exames next week and this porject thats is giving me headaches because of the complexity of options he gave

You
19.01.2018
23:18:24
Don't rely on teachers, lean everything by yourself, especially in programming

Sergey
20.01.2018
09:10:00
https://blog.jetbrains.com/idea/2018/01/intellij-idea-starts-2018-1-early-access-program/

Руслан
20.01.2018
09:11:35
Ни слова про котлин в анонсе

Sergey
20.01.2018
09:11:57
ага, но ведь все ништяки для котлина в плагине релизнули

Google
Руслан
20.01.2018
09:18:39
Так плагин работает и на 2017.3

Anton
20.01.2018
09:29:56
Подскажите, я не очень пока разбираюсь в джетбрейнс. Если я сейчас с IDEA CE 2017.3 - имеет смысл на этот eap переходить?

eap обновляются потом?)

Руслан
20.01.2018
09:32:30
eap это бета, можно поставить toolbox и легко переключаться/ставить/удалять версии https://www.jetbrains.com/toolbox/app/

Igor
20.01.2018
09:34:38
Подскажите, я не очень пока разбираюсь в джетбрейнс. Если я сейчас с IDEA CE 2017.3 - имеет смысл на этот eap переходить?
Хочешь побыть бесплатным бета-тестром - вперед. Если пишешь продакшен и нужна стабильность, то не советую.

Sergey
20.01.2018
09:35:04
раньше для EAP не нужна была лицензия

Sergey
20.01.2018
09:36:49
бывают проблемы серьезные правда и приходится окатываться и ждать следующего патча

Руслан
20.01.2018
09:38:46
Большую часть времени сижу на eap'ах, бывают косяки, но чаще она даже лучше работает чем текущая стабильная :)

Anton
20.01.2018
09:41:45
Спасибо ?

Yuri
20.01.2018
09:54:14
и по легенде внутри самого JetBrains многие пишут саму IDEA сидя на eap`ах

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