Size: a a a

2019 November 02

IK

Igor Kalishevsky in Kotlin Moscow
Играюсь тут пока с javax валидаторами, а то негоже оставлять непознанным такие штуки.
Идея у меня такая: навешивать кучи валидаторов, каждый из которых инжектит в себя @ConfigurationProperties, просто чтобы прочитать длину, или пару свойств - как-то не очень.

В прнципе, аннотация уже знает про имя параметра и его тип.
Это значит, что валидатор может хавать из конфига constraint'ы вида:

KlassName::email
   minSize: 4
   maxSize: 100
   haveSubstring:


В принципе не сложно выглядит, но проблемка в том, что ConstraintValidator в методе isValid принимает контекст
ConstraintValidatorContext, который на самом деле ConstraintValidatorContextImpl из хайбернейта.
Как минимум путь поля там есть в basePath, который, блин, private.
setAccessible, конечно, выход, но ${какашенциянейм}.

Вопрос такой: имеет ли сама идея право на жизнь, и как вообще делают?

(чот вёрстка отъехала погулять. хз как так получилось)
источник
2019 November 06

IK

Igor Kalishevsky in Kotlin Moscow
По теме выше: доигрался с валидаторами, сделал валидацию конфигурируемой из ямла через гуляние по declared fields, понял что сделал какой-то бред и это в ряд ли кому-то понадобится, накрутил собак обратно. Был не прав. :)

Попутно решил свой грейдл причесать. Есть у меня liquibase с одноимённым плагином для грейдла, который я оттуда же конфигурю. Мне очень хочется прочитать src/main/resources/application-${profileName}.yml и забрать оттуда всяких сетапов, типа паролей и прочей порнокриптографии. Кажется, что сделать это не так уж просто, поэтому вопрос: так вообще делают?
источник

SM

Sergey Morgunov in Kotlin Moscow
Друзья, привет! Есть вопрос по корутинам 🙂
Вот смотрю на этот пример https://github.com/Kotlin/kotlinx.coroutines/blob/master/integration/kotlinx-coroutines-jdk8/test/examples/ToFuture-example.kt
Представим, что это не main функция, а какая-то функция, которая выполняется уже на каком-то тред-пуле и должна вернуть CompletableFuture. Вот только внутренности хочется переписать с thenApply.thenApply.thenМатьЕгоApply на императивный вызов suspend функций.
Вопрос: Должен ли я, как в этом примере, создавать родительскую корутину с помощью GlobalScope.future или же это неправильно и я должен как-то иначе это сделать с явной передачей `ThreadPoolExecutor`а?
источник
2019 November 07

Ⓢⓔⓡⓖ in Kotlin Moscow
источник

Ⓢⓔⓡⓖ in Kotlin Moscow
Сегодня состоялась наша первый игровой митап в офисе Революта. Обсудили с ребятами актуальный вопрос - для мобилок - взаимодействие Kotlin и Flutter, Dart.
источник

Ⓢⓔⓡⓖ in Kotlin Moscow
Также почему много Java- разработчиков-бэкендеров не хотят переходить на Kotlin и остаются на Java
источник

SM

Sergey Morgunov in Kotlin Moscow
Ⓢⓔⓡⓖ
Также почему много Java- разработчиков-бэкендеров не хотят переходить на Kotlin и остаются на Java
Почему?
источник

AS

Anton Soboliev in Kotlin Moscow
Ⓢⓔⓡⓖ
Сегодня состоялась наша первый игровой митап в офисе Революта. Обсудили с ребятами актуальный вопрос - для мобилок - взаимодействие Kotlin и Flutter, Dart.
в чем проблема то?
источник

Ⓢⓔⓡⓖ in Kotlin Moscow
Anton Soboliev
в чем проблема то?
В том что мало кто понимает как это взаимодействие происходит
источник

SB

Sergey Bezrukov in Kotlin Moscow
Sergey Morgunov
Почему?
А зачем? На бэке с явой всё хорошо, к lombok и mapstruct все уже привыкли. Мультиплатформа - другое дело.
источник

DS

Dmitriy Shishmakov in Kotlin Moscow
Ⓢⓔⓡⓖ
В том что мало кто понимает как это взаимодействие происходит
Прочитал книгу, сел и начал писать. Какое там вы нашли взаимодействие и проблемы?
источник

AS

Anton Soboliev in Kotlin Moscow
доки не читають?
источник

Ⓢⓔⓡⓖ in Kotlin Moscow
Sergey Bezrukov
А зачем? На бэке с явой всё хорошо, к lombok и mapstruct все уже привыкли. Мультиплатформа - другое дело.
Конечно, с явой там не всё хорошо, если сравнивать с Kotlin, но всё же:
источник

Ⓢⓔⓡⓖ in Kotlin Moscow
1. Им лень учить новый язык
2. Если используются Lombok Extension (расширение классов через Lombok), то это не будет красиво выглядить в Kotlin, следовательно, преемственность портится
3. Создание инстансов в Kotlin - это не всегда одна операция, как в Java (операции инициализации), и типа некоторые java-разработчики считают это существенным минусом
источник

SB

Sergey Bezrukov in Kotlin Moscow
Ⓢⓔⓡⓖ
1. Им лень учить новый язык
2. Если используются Lombok Extension (расширение классов через Lombok), то это не будет красиво выглядить в Kotlin, следовательно, преемственность портится
3. Создание инстансов в Kotlin - это не всегда одна операция, как в Java (операции инициализации), и типа некоторые java-разработчики считают это существенным минусом
-1. Использование Котлина вместо Явы на бэке не приводит к повышению производительности труда программистов, скорее наоборот. Остальное это следствия.
0. Необходимость работы с БД, откуда может прилететь всё что угодно с одной стороны и таким же вебом с другой стороны рождает всяких уродцев типа all-open плагинов и т.п. Это эстетически неприемлемо для многих.
источник

Ⓢⓔⓡⓖ in Kotlin Moscow
Пункт (-1) это может поначалу, когда чел начинает въезжать в Kotlin, апосля производельность возрастает
источник

SB

Sergey Bezrukov in Kotlin Moscow
Ⓢⓔⓡⓖ
Пункт (-1) это может поначалу, когда чел начинает въезжать в Kotlin, апосля производельность возрастает
Возрастает, да ... До уровня java, который был до того как. Мы пробовали Котлин на бэке и решили пока не продолжать именно по экономическим соображениям.
источник

Ⓢⓔⓡⓖ in Kotlin Moscow
Ужасная у вас экономика )
источник

SM

Sergey Morgunov in Kotlin Moscow
Срачек. Инкаминг 😂🥳
источник

SB

Sergey Bezrukov in Kotlin Moscow
Заказчики заразы, результат им подавай, да непременно в срок ) Вот без мультиплатформы хуже чем с ней - её используем активно. А бэк - нет, не зашло. Хотя попробовать было интересно.
источник