Slide 1

Slide 1 text

Introduce Gradle Kotlin DSL (Kotlin lovers edition) @uzzu

Slide 2

Slide 2 text

Kotlin lovers edition …?

Slide 3

Slide 3 text

https://speakerdeck.com/uzzu/introduce-gradle-kotlin-dsl

Slide 4

Slide 4 text

Kotlinで書きたいかという お気持ちの側面が強い

Slide 5

Slide 5 text

Kotlinで書きたいかという お気持ちの側面が強い Kotlin lovers filter

Slide 6

Slide 6 text

_人人人人人人人人人人人_ > Kotlinで書く以外の < >  選択肢はない  <  ̄Y^Y^Y^Y^Y^Y^Y^Y^Y ̄ Kotlinで書きたいかという お気持ちの側面が強い Kotlin lovers filter

Slide 7

Slide 7 text

No content

Slide 8

Slide 8 text

やっていきましょう

Slide 9

Slide 9 text

・どこから手をつけたら? ・まずはbuildSrcから…? ・root projectだけでも…? ・subprojectが大変…? ・multi-modules projectで徐々に移行できるの…? Interoperability?

Slide 10

Slide 10 text

色々試してみたやつ https://github.com/uzzu/practice-kotlin-dsl

Slide 11

Slide 11 text

結論:やっていける

Slide 12

Slide 12 text

Versions Gradle kotlin-dsl Kotlin 4.4 0.13.1 1.1.51 4.5 0.14.2 1.2.0 4.6 0.15.6 1.2.21 4.7 0.16.3 1.2.31 4.8 0.17.5 1.2.41 4.9 0.18.4 1.2.41 4.10 1.0-RC3 1.2.60 4.10.1~ 1.0-RC6 1.2.61 5.0-milestone-1 1.0-RC12 1.3.0-rc2

Slide 13

Slide 13 text

Migration Guide https://guides.gradle.org/migrating-build-logic-from-groovy-to-kotlin/ kotlin-dsl samples https://github.com/gradle/kotlin-dsl/tree/master/samples ./gradlew kotlinDslAccessorsReport 使えるDSLが列挙されて便利 uzzu/practice-kotlin-dsl https://github.com/uzzu/practice-kotlin-dsl Androidエンジニア向け(?) References

Slide 14

Slide 14 text

Dogfooding

Slide 15

Slide 15 text

補完は効くけど New (Project|Module) した時にKotlinDSLを 吐いてくれない

Slide 16

Slide 16 text

今は筋肉

Slide 17

Slide 17 text

Introduce Gradle Kotlin DSL (Kotlin lovers edition) End