Object, companion object e singleton em Kotlin
Diferenciar object declaration, object expression e companion object em Kotlin, como criam singletons, chamadas a partir de Java e erros comuns.
Diferenciar object declaration, object expression e companion object em Kotlin, como criam singletons, chamadas a partir de Java e erros comuns.
Configure Maven para Kotlin e Java se chamarem mutuamente, trate nullability, @JvmStatic, @JvmOverloads e erros comuns do Spring Boot.
Use by lazy para inicialização preguiçosa segura com threads, use Delegates.observable e vetoable para monitorar ou bloquear mudanças de propriedades.
Como declarar function types, passar e retornar lambdas, usar function references, closures, lambda with receiver e inline em Kotlin.
Configure um projeto Spring Boot 3 com Kotlin, escrever REST API, entity JPA, configuração e testes, com erros comuns ao migrar do Java.
Diferencie as 5 funções de escopo do Kotlin por context object e valor de retorno, com exemplos práticos, testes e erros comuns.
Como usar map, filter, groupBy e suas variantes como mapNotNull, partition, groupingBy para processar coleções em Kotlin de forma concisa e correta.
Aprenda Kotlin Flow do básico: flow builder, operadores, flowOn, tratamento de erros, StateFlow/SharedFlow e como escrever testes com runTest.
Use sealed classes, sealed interfaces e expressões when para modelar estado com segurança. O compilador reportará um erro se você esquecer de lidar com um caso.
Entenda o que Kotlin gera automaticamente para uma data class, como usar copy() para criar cópias seguras, e os erros comuns ao comparar ou herdar.
Entenda como usar extension function em Kotlin para estender classes existentes sem herança, com exemplos práticos e dicas de uso.
Entenda launch, async, suspend fun e CoroutineScope em Kotlin coroutines, com exemplos funcionais e como evitar vazamento de coroutines.
Aprenda como Kotlin lida com null de forma segura usando nullable types, safe call, elvis operator e funções scope como let.