Size: a a a

Kotlin Community

2020 August 25

AS

Alex S. in Kotlin Community
Два параметра я взял для краткости, в реальности их может больше, но в разумных пределах, не думаю что больше 10
источник

AN

Alexander Nozik in Kotlin Community
Alex S.
Два параметра я взял для краткости, в реальности их может больше, но в разумных пределах, не думаю что больше 10
Ну тогда тем более надо через изменяемый объект делать.
источник

AS

Aleksandr Semyanniko... in Kotlin Community
Alexander Nozik
Типичный билдер в котлин - это объект с мутабельными полями, который умеет генерировать неизменяемый объект с теми же полями, а вызов билдера выглядит так:
 fun MyObject(block: MyObjectBuilde.()->Unit) : MyObject
Вот фичу бы в язык, чтоб эти билдеры не писать
источник

AN

Alexander Nozik in Kotlin Community
Aleksandr Semyannikov
Вот фичу бы в язык, чтоб эти билдеры не писать
Зачем в язык, это на уровне плагина IDE решается.
источник

QH

Quantum Harmonizer in Kotlin Community
Aleksandr Semyannikov
Вот фичу бы в язык, чтоб эти билдеры не писать
Нинужны
источник

AN

Alexander Nozik in Kotlin Community
Ну и да, можно взять лича. :)
источник

QH

Quantum Harmonizer in Kotlin Community
Alexander Nozik
Ну и да, можно взять лича. :)
Зачем? Primary constructor с val-ами-параметрами — лучший билдер.
источник

AS

Aleksandr Semyanniko... in Kotlin Community
Alexander Nozik
Зачем в язык, это на уровне плагина IDE решается.
Ну и что что плагин :) а что за плагин, кстати?
источник

AN

Alexander Nozik in Kotlin Community
Quantum Harmonizer
Зачем? Primary constructor с val-ами-параметрами — лучший билдер.
Ну тоже можно. Но не так удобно.
источник

с#

саша сок #KotlinGang... in Kotlin Community
Quantum Harmonizer
Зачем? Primary constructor с val-ами-параметрами — лучший билдер.
ну не лучший, если нужны доп-чеки, но если заменять билдеры плагином, то в таких кейсах
источник

с#

саша сок #KotlinGang... in Kotlin Community
Aleksandr Semyannikov
Ну и что что плагин :) а что за плагин, кстати?
просто абстрактный какой-нибудь
источник

AN

Alexander Nozik in Kotlin Community
Aleksandr Semyannikov
Ну и что что плагин :) а что за плагин, кстати?
Ну вам же надо просто по классу сгенерить еще один класс. Вон торнада такое умеет делать для вью-моделей. Просто инспекцию с кодогенерацией делаете и все.
источник

AN

Alexander Nozik in Kotlin Community
Кстати есть https://www.jetbrains.com/help/idea/replace-constructor-with-builder.html. По-моему есть такой же для котлина...
источник

AS

Aleksandr Semyanniko... in Kotlin Community
Alexander Nozik
Кстати есть https://www.jetbrains.com/help/idea/replace-constructor-with-builder.html. По-моему есть такой же для котлина...
Вот это поинтереснее, да, надо изучить вопрос
источник

с#

саша сок #KotlinGang... in Kotlin Community
Alexander Nozik
Кстати есть https://www.jetbrains.com/help/idea/replace-constructor-with-builder.html. По-моему есть такой же для котлина...
почему там джава и класс с маленькой буквы))
источник

с#

саша сок #KotlinGang... in Kotlin Community
Alexander Nozik
Кстати есть https://www.jetbrains.com/help/idea/replace-constructor-with-builder.html. По-моему есть такой же для котлина...
а ок
источник

AN

Alexander Nozik in Kotlin Community
Если нет, то не очень сложно сделать. Это сильно проще, чем язык курочить
источник

с#

саша сок #KotlinGang... in Kotlin Community
ну в джаве сложнее билдеры делать, всё-таки в котлине

class ABuilder {
   var b: Int
   fun toA() = A(b)
}

fun a(builder: ABuilder.() -> Unit) = ABuilder().apply(builder).toA()

class A(val b: Int) {
   // Code
}


в идее это не так уж и долго пишется
источник

AS

Aleksandr Semyanniko... in Kotlin Community
саша сок #KotlinGang
ну не лучший, если нужны доп-чеки, но если заменять билдеры плагином, то в таких кейсах
Да кейсов напридумывать можно, когда билдеры удобнее/красивее/(подставить нужное), сейчас просто в голову не приходит киллер фича, но вот пару дней назад, как помню, сидел и вздыхал что билдеры писать самому надо
источник

AS

Aleksandr Semyanniko... in Kotlin Community
Alexander Nozik
Если нет, то не очень сложно сделать. Это сильно проще, чем язык курочить
Ну это так, мысль была из разряда "а круто бы", вообще хз как это в языке могло бы выглядеть
источник