@kotlin_lang

Страница 901 из 982
Bogdan
01.10.2018
19:33:06
Вроде раньше говорили что заебись
не доделаный, болепрейта много, еще что-то было с перфомансом (не проверено), там что-то генерировалось. Но это поверхосное, ты же пожешь поюзать и поделится. Мне лично не понравилось, но я просто тестировал

Bogdan
01.10.2018
19:37:19
Спасибо за ответ)
идеи сами неплохие, но еще не суперюзабельно, как читсую котлин либу я бы попробывал, для jvm есть JOOQ

Kirill
01.10.2018
19:37:59
Надо небольшой проектик написать

Google
Kirill
01.10.2018
19:38:17
Думаю ктор попробовать

Quantum Harmonizer
01.10.2018
19:38:24
Чем exposed плох?
БД выбирается неявно

Kirill
01.10.2018
19:38:35
И думаю какую ормку к нему взять

Quantum Harmonizer
01.10.2018
19:38:58
Kirill
01.10.2018
19:39:31
Спасибо)

Попробую

https://github.com/consoleau/kotlin-jpa-specification-dsl/blob/master/README.md Кто-нибудь пробовал эту штуку, норм не норм?

Quantum Harmonizer
01.10.2018
19:39:56
Попробую
но он год без коммитов

Bogdan
01.10.2018
19:40:42
БД выбирается неявно
щас затесим, помню был разговор

Kirill
01.10.2018
19:40:56
Тогда остаётся jooq и спринг дата

1337
01.10.2018
19:41:52
иииии выигрывает спринг дата

Google
Quantum Harmonizer
01.10.2018
19:42:01
Bogdan
01.10.2018
19:42:30
Тогда остаётся jooq и спринг дата
первый - это Builder SQL, второе ... скорей ORM, или надстройка

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

Quantum Harmonizer
01.10.2018
19:56:28
Не, я знаю, что так можно. А надо, чтобы иначе было нельзя.

Bogdan
01.10.2018
19:57:24
Не, я знаю, что так можно. А надо, чтобы иначе было нельзя.
тогда рекламы не будет, в samples нада же показать красоту, и "декларативное программирование"

?

Quantum Harmonizer
01.10.2018
19:57:38
Не, я знаю, что так можно. А надо, чтобы иначе было нельзя.
...как и любой код с глобальным изменяемым состоянием в не-процедурном языке

Bogdan
01.10.2018
19:59:13
...как и любой код с глобальным изменяемым состоянием в не-процедурном языке
ах да, ты ненавидешь состояния... и пилишь враперы где оно используется, и где есть рефлекси, где тоже используется состояни, но критикуешь других за такой подход ?

Ivan
01.10.2018
20:04:51
https://github.com/consoleau/kotlin-jpa-specification-dsl/blob/master/README.md Кто-нибудь пробовал эту штуку, норм не норм?
Пробовал, идея крутая, как QueryDSL без кодогенерации, но реализовано не все из Specifications API, сыро

Bogdan
01.10.2018
20:07:45
Пробовал, идея крутая, как QueryDSL без кодогенерации, но реализовано не все из Specifications API, сыро
> без кодогене Аннотации и нет кодогенерации ? Еще скажите спринг без магии

а не там старая добра рефлексия, походу

1337
01.10.2018
20:09:06
декораторы, декораторы, декораторы

Bogdan
01.10.2018
20:10:43
декораторы, декораторы, декораторы
import kotlin.reflect.KProperty1 хоть и бозовая но есть

Konstantine
01.10.2018
22:19:14
Есть ли какой-то список корутин-билдеров, в котором расписано какой и когда стоит использовать?

Жабра
01.10.2018
22:25:03
Есть ли какой-то список корутин-билдеров, в котором расписано какой и когда стоит использовать?
launch - когда не нужно сразу дождаться ответа, важно запустить и потом просто отслеживать состояние async - то же, но как результат хочется получить что-то конкретное, например пользователя или респонс withContext - когда нужно запустить и дождаться runBlocking - лучше не использовать, ибо блокирует, но иногда всё же приходится. В основном для того чтобы связывать новый код на котлин+корутины с джавой

Konstantine
01.10.2018
22:26:06
А всякие suspendCancellableCoroutine

Жабра
01.10.2018
22:27:03
А всякие suspendCancellableCoroutine
Это, вроде, низкоуровневые корутин-билдеры, которые нужно использовать только при написании своих библиотек

Google
Alexandr
02.10.2018
02:52:42
https://github.com/consoleau/kotlin-jpa-specification-dsl/blob/master/README.md Кто-нибудь пробовал эту штуку, норм не норм?
Бери querydsl, jpa specification бяка, под каким бы она соусом не готовилась. Если найдешь kotlin дополнения для querydsl - пиши, будет интересно посмотреть

Artur
02.10.2018
07:07:34
Есть ли в java аннотация интерпретируемая аналогично lateinit в Kotlin?

Artur
02.10.2018
07:09:27


Vladimir
02.10.2018
07:16:47
Есть ли в java аннотация интерпретируемая аналогично lateinit в Kotlin?
Поведение по умолчанию практически идентично lateinit

Egor
02.10.2018
07:19:27
Поведение по умолчанию практически идентично lateinit
Ну, на самом деле, не совсем. Некоторые вызовы, использующие этот адаптер, идея может выделять как "May produce NullPointerException", так что @NonNull тут именно для этого. С другой стороны, если оно @NonNull, то и инициализироваться должно сразу, либо как в Котлине - lateinit

Mikhail
02.10.2018
07:58:56
т.е. ты помечаешь NonNull чтобы он кидал NullableProblems, а потом его саппрессишь

Artur
02.10.2018
08:00:26
то есть мы пользуемся lateinit в Kotlin без саппреса и все вроде бы ок.

Konstantine
02.10.2018
08:01:56
то есть мы пользуемся lateinit в Kotlin без саппреса и все вроде бы ок.
От использования - плохим этот подход не перестает быть.

Artur
02.10.2018
08:03:01
Речь не о плохом и хорошем. Он (подход) есть в Kotlin, интересует его наличие в Java.

Konstantine
02.10.2018
08:04:02
Речь не о плохом и хорошем. Он (подход) есть в Kotlin, интересует его наличие в Java.
Java не рассчитана на наллабл и не наллабл типы, так что вполне очевидно, что не все практики из котлина в ней реализуются так же.

Artur
02.10.2018
08:04:27
ну собственно, это я и ожидал услышать. спасибо, вопрос закрыт

Boris
02.10.2018
08:14:34
Бери querydsl, jpa specification бяка, под каким бы она соусом не готовилась. Если найдешь kotlin дополнения для querydsl - пиши, будет интересно посмотреть
Спецификации вполне юзабельны, если сделать для них приличный дсл, тем более что спецификации идут из коробки в спринге и жпа, которые часто используются на бэкэнде, то для этих случаев вполне можно было бы спецификации использовать

Boris
02.10.2018
08:22:12
Я не сказал, что кверидсл это шлак, я только о том, что спецификации хоть и уродливые, но из тоже можно использовать при некоторой сноровке

Google
Badya
02.10.2018
08:53:01
Речь не о плохом и хорошем. Он (подход) есть в Kotlin, интересует его наличие в Java.
Надо понимать что в Котлин он сделан в для поддержки DI в случае когда контейнер не стартанет если не сможет Bean инициализировать, или тех же Before в тестах где тоже все упадет если не инициализируется, а в Java такой потребности нет ибо нет жёсткого контракта в компиляторе на nullability

Admin
ERROR: S client not available

Alexandr
02.10.2018
09:24:59
kotlin repl

https://twitter.com/kotlin/status/1047054239917334531

Руслан
02.10.2018
09:30:32
Красиво

Boris
02.10.2018
09:57:31
https://twitter.com/kotlin/status/1047054239917334531
это только у меня видео качества ~240?

Alexandr
02.10.2018
10:02:49
это только у меня видео качества ~240?
скачет от раза к разу почемуто

spark запилил repl

Denis
02.10.2018
10:33:25
Добрый день. При написании тестов на котлине возникает вопрос: как замокать код, который происходит в блоке init{}? Может кто-то сталкивался с этим?

Alexander
02.10.2018
10:36:39
spark запилил repl
так вроде уже давно, если мы об одном и том же говорим

Alexander
02.10.2018
10:38:01
а. Сейчас гляну

Кошмарь

Лучше http://beakerx.com/ там поддержка спарка хорошая и человеческий редактор

Kirill
02.10.2018
10:45:22
поясните, в чем кайф?)

может пригодится где

или скажите что загуглить

Google
Alexander
02.10.2018
10:57:06
Что именно, спарк?

Kirill
02.10.2018
10:57:56
видимо да

Alexander
02.10.2018
10:59:24
видимо да
Это для поточного анализа данных на кластере. apache spark называется.

Никак, этого делать категорически не надо
Я бы сказал, что в инит блок что-то. что надо тестировать вообще вставлять не стоит

Denis
02.10.2018
11:00:22
Никак, этого делать категорически не надо
А как тогда быть? У меня в презентере в init происходит РХ подписка. Если ее остааить так, то она всегда null возвращает и вылетает npe

Alexander
02.10.2018
11:01:20
Я не могу сказать, что понимаю все термины, ибо работаю в другой области, но не надо ничего сложного делать в init.

Denis
02.10.2018
11:02:00
Andrew
02.10.2018
11:02:01
Например через лямбду

Dmitry
02.10.2018
12:23:06
Добрый день. При написании тестов на котлине возникает вопрос: как замокать код, который происходит в блоке init{}? Может кто-то сталкивался с этим?
Ты что-то вызываешь на обьекте, который был заинжекчен, в тесте инжекть туда тестовую реализацию этого обьекта.

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