jvmchat | Unsorted

Telegram-канал jvmchat - pro.jvm

5858

Сообщество разработчиков Java Scala Kotlin Groovy Clojure Чат для нач-их: @javastart Наш канал: @proJVM Вакансии: @jvmjobs @jvmjobschat Конфы: @jvmconf ⚠️ Оффтоп -> @flood ❌Переход на личности ❌Троллинг ❌Реклама ❌HH (вакансии) ❌Варез

Subscribe to a channel

pro.jvm

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

Читать полностью…

pro.jvm

это позиционный маппер

Читать полностью…

pro.jvm

если у тебя интерфейс зависит от того, что нагенерила имплементация - это плохой дизайн

Читать полностью…

pro.jvm

.fetchOne(Records.mapping(::UserProfile))

Читать полностью…

pro.jvm

Ну у меня это extension fun, которая в себе содержит несколько других, которые и логи пишут и ответ отправляют и мониторинг делают

Читать полностью…

pro.jvm

да тут нет заморочки

Читать полностью…

pro.jvm

а, ну ради такого можно заморочиться

Читать полностью…

pro.jvm

или вообще Cassandra

Читать полностью…

pro.jvm

кодген - это часть имплементации

Читать полностью…

pro.jvm

какова аргументация?

Читать полностью…

pro.jvm

все остальное твое должно быть

Читать полностью…

pro.jvm

А в логах останется все что нужно для анализа

Читать полностью…

pro.jvm

А на все "не получилось оформить заказ" ты пользаку пишешь"чет не то, попробуйте позже"

Читать полностью…

pro.jvm

а если ни A ни B не знают как обработать ошибку из C?

Читать полностью…

pro.jvm

кстати, я обмазался .fetchInto(FooEntity::class.java) и убрал все !! из кода

Читать полностью…

pro.jvm

Ну и я же не топлю за этот подход, но так, по фану и для общего развития можно было бы попробовать

Читать полностью…

pro.jvm

вот тут нужен маппер с !! заместо референса на конструктор

Читать полностью…

pro.jvm

это попахивает здравым смыслом

Читать полностью…

pro.jvm

это уже вообще попахивает слоистой архитектурой

Читать полностью…

pro.jvm

датакласс напиши и перелей

Читать полностью…

pro.jvm

я делаю интерфейс

interface UserRepository {

fun findUser(id: UUID): User?
}

мой User не зависим от реализации

Читать полностью…

pro.jvm

или Родину продаст)))

Читать полностью…

pro.jvm

сегодня JooqRepository

Читать полностью…

pro.jvm

для плоских табличек

Читать полностью…

pro.jvm

я предпочту первое, ну и да - не в контроллерах обработка, а в хэндлерах

Читать полностью…

pro.jvm

не надо жуковскиие классы юзать

Читать полностью…

pro.jvm

а еще жук для котлин умеет генерить data классы с правильной nullability и тогда без проблем работает .fetch(mapper())

Читать полностью…

pro.jvm

При обычных exception у тебя контроллер может получить ошибку репозитория что бд не доступна и должен на это что-то пользователю сказать. Тут он получит абстрактное "не удалось оформить заказ" от сервиса заказов

Читать полностью…

pro.jvm

Records.mapping предпочитаю

Читать полностью…

pro.jvm

Если я правильно понял вопрос.

fun foo(n: Int): Either<Error, String> = either {
val s = f(n).bind()
val t = g(s).bind()
t.summarize()
}

В доке же написано что Either прокидываются через .bind().
.bind конкретно в случае Either в котлин arrow-kt либы - это аналог "?" в расте для боилерплейт фри ерор пропагейтинг для Result
насколько я понял.

.bind здесь приходит из скоупа.
Очень похоже на то как в корутинах CoroutineScope.
Только тут конечно же скоуп другого типа

Читать полностью…
Subscribe to a channel