Two JVM languages, two different strengths
Day 1
Groovy — Scripting, DSLs & Testing
- Groovy syntax: closures, GStrings, ranges, spread operator, safe navigation
- Dynamic vs static typing: @TypeChecked, @CompileStatic
- Collections: list, map, and set operations
- Groovy DSLs: builder pattern, methodMissing, propertyMissing
- Gradle with Groovy DSL: build scripts, custom tasks, plugins
- Spock Framework: Specification class, given-when-then blocks, @Unroll, mocking with Mock() and Stub()
Day 2
Kotlin — Modern JVM Development
- Kotlin syntax: val/var, data classes, object, companion object, extensions
- Null safety: nullable types, ?, !!, let, Elvis operator
- Functional features: lambda, higher-order functions, sequence vs list
- Coroutines: suspend functions, CoroutineScope, launch, async/await, Flow
- Kotlin with Spring Boot: @ConfigurationProperties with data classes, constructor injection
- Kotlin DSLs: Gradle Kotlin DSL, type-safe builders
- Interop: calling Java from Kotlin and Kotlin from Java
What your team walks away with
Practical fluency in both languages — knowing when Groovy's dynamic power is the right tool and when Kotlin's type safety pays off.
- Write idiomatic Groovy for build scripts and Spock test specifications
- Build Kotlin applications with proper null safety and extension functions
- Use Kotlin coroutines for non-blocking concurrent code
- Migrate Gradle build scripts from Groovy DSL to Kotlin DSL
Book the Groovy & Kotlin training
Can be split into two separate 1-day sessions or delivered together as a JVM language comparison.
Get in touch