Size: a a a

2018 February 26

RE

Roman Elizarov in Kotlin JVM
А еще никто undertow-kotlin не запилил с Kotlin DSL для него?
источник

RI

Ruslan Ibragimov in Kotlin JVM
А зачем? В этом месте и так хорошо.
Куда важнее иметь стандартные варианты хендлеров которые с корутинами. Т.е. асинхронный HttpHandler и HttpHandlerWrapper. И соответсвенно адаптации стандартных хенделеров.

Т.е. условно говоря есть стандартный https://github.com/undertow-io/undertow/blob/master/core/src/main/java/io/undertow/util/ChainedHandlerWrapper.java#L40

но я его не могу использовать, т.к. я не могу использовать HttpHandler. И поэтому у меня свои велосипеды на все случаи:

class ChainedCoroutinesHandlerWrapper(
   private vararg val handlers: CoroutinesHandlerWrapper
) : CoroutinesHandlerWrapper {
   override fun wrap(handler: CoroutinesHandler): CoroutinesHandler {
       return handlers.foldRight(handler) { wrapper, wrappedHandler ->
           wrapper.wrap(wrappedHandler)
       }
   }
}


interface CoroutinesHandler {
   suspend fun handleRequest(exchange: HttpServerExchange)
}


interface CoroutinesHandlerWrapper {
   fun wrap(handler: CoroutinesHandler): CoroutinesHandler
}
источник
2018 February 27

А

Артёмка in Kotlin JVM
Ребят, а вы тесты пишете, когда на кторе что-либо делаете?
источник

RI

Ruslan Ibragimov in Kotlin JVM
(ну тут вопрос шире, пишете ли вы тесты вообще 🌚)
источник

А

Артёмка in Kotlin JVM
Ну или так
источник

RI

Ruslan Ibragimov in Kotlin JVM
Ну ладно, раз все молчат, то буду отдуваться за всех - грешен, иногда пишу тесты)
источник

А

Артёмка in Kotlin JVM
Просто интересно, несколько это необходимо.
источник
2018 February 28

RI

Ruslan Ibragimov in Kotlin JVM
Ну в целом это нужный скил который делает твой код лучше.
источник

RI

Ruslan Ibragimov in Kotlin JVM
Дальше можно рассуждать почему проекты не имеют тестов вообще или не имеют 100% покрытия, и что 100% покрытие еще ничего не значит.
источник

А

Артёмка in Kotlin JVM
Хм. Надо бы тогда поучиться тесты писать
источник

А

Артёмка in Kotlin JVM
Но ведь код, покрытый тестами != хороший код?
источник

RI

Ruslan Ibragimov in Kotlin JVM
Если код тестируется - это хороший знак.
источник

RI

Ruslan Ibragimov in Kotlin JVM
Это значит что ты написал в функциональном стиле, или использовал DI и у тебя инверсия контроля.
источник

А

Артёмка in Kotlin JVM
Почему все так любят эти DI?
источник

А

Артёмка in Kotlin JVM
Куда ни глянь, почти везде dagger, koin, kodein и т.д.
источник

RI

Ruslan Ibragimov in Kotlin JVM
Потому что это достаточно удобный способ писать тестируемый код
источник

А

Артёмка in Kotlin JVM
получается только лишь для того, чтобы писать тесты?
источник

RI

Ruslan Ibragimov in Kotlin JVM
Нет, просто это взаимосвязанные вещи
источник

А

Артёмка in Kotlin JVM
Понятно, спасибо
источник

RI

Ruslan Ibragimov in Kotlin JVM
Ну вот для примера, у меня есть такой вот сервис
источник