Session

Bring your own DSL to project builds, with Idiomatic Kotlin and Gradle

Gradle build scripts or Apache Maven definitions might be modular, might be declarative but, let’s face it, most often they are messy at scale, especially when maintained and passed between developers for years. With the idiomatic programming capabilities of Kotlin DSL (aka Idiomatic Kotlin), we’ve got a chance to turn that chaos into clean, readable, and maintainable… [production-grade?] code. Your developer productivity teams may even build their own DSL to address the company’s needs and the unique technology stack.

This Code&Tell session will focus on using Idiomatic Kotlin to write Gradle scripts and convention plugins that a software engineer can understand. We will take a build definition of a library for a popular open source project (do you like testing with containers? ;) ) and improve it together using classic OOP features, Kotlin extension functions, type safe builders, and defaults. While doing so, we will create a convention plugin that other library/extension developers can use with ease.

Once we finish, we will talk about a few developer tools and libs from the Kotlin ecosystem that make development of such extensions easier. Specifically for Gradle, we will also discuss a few new projects, including Declarative Gradle, that should make developing DSLs for your own company even easier.

Oleg Nenashev

Community Builder and DevRel Consultant, CNCF Ambassador, Jenkins core maintainer

Neuchâtel, Switzerland

Actions

Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.

Jump to top