Я разработчик Android. И как результат напишите build by Gradle. Многие задачи я пишу на Gradle DSL на Groovy.
Иногда мне нужно создавать задачи Gradle динамически («на лету»). Вот пример:
task installDebugFlavors() {
android.applicationVariants.all { v ->
if (v.name.endsWith('Debug')) {
String name = v.name.capitalize()
dependsOn "install$name"
}
}
}
Эта задача генерирует новые задачи со всеми комбинациями вкусов. В результате скрипт Gradle очень маленький, его легко понять и легко поддерживать. Это очень мощные возможности Groovy. И мне это очень часто помогает.
В новой версии Gradle был введен новый язык - Kotlin.
У меня вопрос: можно ли написать такую же задачу (для динамического создания других задач) на Kotlin?