Concorrência em Kotlin: do básico aos padrões avançados
Concorrência em Kotlin: do básico aos padrões avançados
Resumo:
O livro «Concorrência em Kotlin: do básico aos padrões avançados» é um guia abrangente para criar aplicações rápidas, responsivas e escaláveis na linguagem Kotlin. Se você programa em Kotlin para Android, backend (Ktor, Spring WebFlux) ou desktop, este livro ajudará você a entender a assincronia e o multithreading em um nível profundo.
Sobre o que é este livro?
O livro cobre todo o caminho, desde conceitos básicos até cenários complexos de programação concorrente. Você aprenderá:
- Fundamentos da concorrência — como as threads diferem das corrotinas, como funciona o agendador (Dispatcher) e por que as corrotinas são mais leves que as threads.
- Kotlin Coroutines — inicialização, cancelamento, concorrência estruturada, Scopes, Job e Deferred.
- Segurança de thread — variáveis atômicas, Mutex, Semaphore, ThreadLocal e trabalho com estado compartilhado.
- Canais (Channels) — Producer-Consumer, fan-out, fan-in, canais ticker para transmissão de dados em fluxo.
- Flow e Reactive Streams — fluxos frios e quentes, backpressure, operadores de transformação, StateFlow e SharedFlow.
- Padrões avançados — Actor Model, Supervisor, CoroutineExceptionHandler, processamento paralelo com mapAsync e flatMapMerge.
- Teste de código concorrente — runTest, TestDispatcher, mock de corrotinas e depuração de condições de corrida.
Para quem é este livro?
- Desenvolvedores Kotlin (Android, Backend, Multiplatform) que desejam escrever código assíncrono sem bloqueios.
- Juniores e plenos que desejam sistematizar conhecimentos sobre corrotinas e multithreading.
- Programadores migrando de Java (CompletableFuture, Thread) para o Kotlin moderno.
- Todos que desejam evitar race condition, deadlock e vazamentos de memória em aplicações concorrentes.
O que você aprenderá?
- Como iniciar e cancelar corrotinas corretamente, sem causar vazamentos.
- Como escolher entre Dispatchers.Default, IO, Main e Unconfined.
- Como construir cadeias reativas com Flow e tratar erros em fluxos.
- Como testar código assíncrono usando tempo virtual.
- Como escrever servidores de alta carga e aplicações Android sem travamentos.
O livro contém dezenas de exemplos práticos, prontos para uso em projetos reais. Após a leitura, você será capaz de projetar arquiteturas concorrentes com confiança e otimizar o desempenho do seu código.
Nota: O livro é voltado para leitores que já conhecem a sintaxe do Kotlin. Se você está começando a aprender a linguagem, recomenda-se primeiro fazer um curso básico.