---
title: "Tutoriais Kotlin Passo a Passo | Kotlin Brasil"
url: "https://kotlin.dev.br/tutoriais.md"
markdown_url: "https://kotlin.dev.br/tutoriais.md"
description: "Tutoriais práticos de Kotlin em português. Aprenda criando projetos reais: apps Android, APIs REST, Compose é mais."
---

# Tutoriais Kotlin Passo a Passo | Kotlin Brasil

Tutoriais práticos de Kotlin em português. Aprenda criando projetos reais: apps Android, APIs REST, Compose é mais.


## Por onde começar

Se você está chegando agora em Kotlin, comece pelos fundamentos da linguagem antes de entrar em Android ou backend. A sequência mais segura é:

- **[Primeiro programa em Kotlin](/tutoriais/primeiro-programa-kotlin/)** — sintaxe inicial, execução e estrutura de um arquivo Kotlin.
- **[Variáveis e tipos](/tutoriais/variaveis-e-tipos/)** — `val`, `var`, inferência de tipos e valores básicos.
- **[Estruturas condicionais](/tutoriais/estruturas-condicionais/)** — `if`, `when` e decisões no código.
- **[Loops em Kotlin](/tutoriais/loops-kotlin/)** — repetição, coleções e iteração idiomática.
- **[Funções em Kotlin](/tutoriais/funcoes-kotlin/)** — parâmetros, retorno e organização de lógica.
- **[Null safety](/tutoriais/null-safety-tutorial/)** — o recurso que evita muitos `NullPointerException` em projetos reais.

## Trilha Android moderna

Para criar apps Android em 2026, a ordem ideal é aprender UI, estado, arquitetura, persistência e trabalho em segundo plano. Esta trilha evita pular direto para bibliotecas sem entender o papel de cada camada.

- **[Primeiro app Android com Kotlin](/tutoriais/primeiro-app-android/)** — projeto inicial com Jetpack Compose, ViewModel e `StateFlow`.
- **[Jetpack Compose básico](/tutoriais/jetpack-compose-basico/)** — UI declarativa, composables e estado.
- **[Layouts com Jetpack Compose](/tutoriais/jetpack-compose-layouts/)** — estrutura visual para telas mais completas.
- **[MVVM com Kotlin](/tutoriais/kotlin-mvvm-tutorial/)** — separação entre tela, estado e repository.
- **[Room Database com Kotlin](/tutoriais/kotlin-room-database-tutorial/)** — persistência local para dados estruturados.
- **[DataStore Preferences com Kotlin](/tutoriais/datastore-preferences-kotlin/)** — preferências, filtros e flags observáveis com `Flow`.
- **[Retrofit com Kotlin](/tutoriais/kotlin-retrofit-tutorial/)** — consumo de APIs REST com OkHttp, coroutines, autenticação, erros e cache offline.
- **[App Links e Deep Links com Kotlin](/blog/app-links-deep-links-android-kotlin-2026/)** — rotas externas, Navigation Compose, validação, analytics e testes de links reais.
- **[WorkManager com Kotlin no Android](/blog/workmanager-kotlin-android-2026/)** — sincronização em background, retry e constraints.
- **[Android offline-first com Kotlin](/blog/android-offline-first-kotlin-2026/)** — como combinar Room, DataStore, WorkManager e Flow em uma arquitetura de produto real.
- **[Testes Android com Kotlin](/guias/testes-android-compose-maestro/)** — como validar ViewModel, Compose, persistência e fluxos críticos.
- **[Firebase Crashlytics com Kotlin](/blog/firebase-crashlytics-anr-android-kotlin-2026/)** — crashes, ANRs, logs seguros e estabilidade depois que o app chega em produção.

## Trilha backend Kotlin

Kotlin também é uma opção madura para APIs, serviços internos e produtos JVM. Para backend, siga esta base:

- **[Ktor com Kotlin](/tutoriais/kotlin-ktor-tutorial/)** — API leve, assíncrona e idiomática.
- **[OpenAPI e Swagger no Ktor](/tutoriais/kotlin-ktor-openapi-swagger/)** — documentação de APIs para times e clientes.
- **[Spring Boot com Kotlin](/tutoriais/kotlin-spring-boot-tutorial/)** — caminho empresarial para serviços JVM.
- **[PostgreSQL com Kotlin](/tutoriais/kotlin-postgresql-backend/)** — persistência relacional em aplicações server-side.
- **[Gradle com Kotlin](/tutoriais/kotlin-gradle-tutorial/)** — build, dependências e organização de projeto.

## Qualidade e aprofundamento

Depois que a base estiver funcionando, aprofunde linguagem, testes e padrões que aparecem em código de produção:

- **[Coroutines básico](/tutoriais/coroutines-tutorial-basico/)** e **[coroutines avançado](/tutoriais/coroutines-avancado/)** — concorrência estruturada para Android e backend.
- **[Flow com Kotlin](/tutoriais/kotlin-flow-tutorial/)** — streams reativos para estado e dados assíncronos.
- **[Testes unitários com Kotlin](/tutoriais/kotlin-testes-unitarios/)** — confiança para refatorar ViewModels, services e regras de domínio.
- **[Sealed classes](/tutoriais/sealed-classes-tutorial/)** — estados de UI, respostas de API e modelagem segura.
- **[Extension functions](/tutoriais/extension-functions-tutorial/)** — APIs expressivas sem herança desnecessária.
- **[Boas práticas Kotlin](/tutoriais/boas-praticas-kotlin/)** — legibilidade, organização e decisões idiomáticas.

## Projetos sugeridos

Uma boa forma de transformar estudo em portfólio é evoluir o mesmo projeto em camadas:

1. crie uma lista de tarefas simples com Compose e ViewModel;
2. adicione Room para salvar itens localmente;
3. use DataStore para tema, filtros e onboarding;
4. conecte uma API com Retrofit ou Ktor Client;
5. adicione WorkManager para sincronizar mudanças pendentes;
6. cubra ViewModel, repository, DAO e jornada principal com [testes Android em Kotlin](/guias/testes-android-compose-maestro/);
7. adicione [App Links e deep links](/blog/app-links-deep-links-android-kotlin-2026/) para abrir telas reais a partir de web, e-mail e notificações;
8. publique uma versão interna e acompanhe crashes, ANRs e logs seguros com [Firebase Crashlytics](/blog/firebase-crashlytics-anr-android-kotlin-2026/).

Esse caminho mostra mais maturidade do que vários CRUDs isolados, porque demonstra arquitetura, persistência, estado reativo, rede instável e manutenção real.


## Pages

- [WebSockets com Ktor e Kotlin: Chat em Tempo Real | Kotlin Brasil](/tutoriais/ktor-websockets-kotlin.MD) - Aprenda a criar WebSockets com Ktor e Kotlin para chat, notificações e eventos em tempo real, com coroutines, serialização, autenticação e cuidados de produção.
- [DataStore Preferences com Kotlin: Guia Android em 2026 | Kotlin Brasil](/tutoriais/datastore-preferences-kotlin.MD) - Aprenda DataStore Preferences com Kotlin no Android: setup, chaves tipadas, Flow, Repository, migrations de SharedPreferences e boas práticas.
- [Kotlin com PostgreSQL: Backend Prático em 2026 | Kotlin Brasil](/tutoriais/kotlin-postgresql-backend.MD) - Aprenda a usar Kotlin com PostgreSQL no backend: schema, conexão, Exposed, migrations, transações, testes e boas práticas para APIs em produção.
- [OpenAPI e Swagger no Ktor: Documente APIs Kotlin | Kotlin Brasil](/tutoriais/kotlin-ktor-openapi-swagger.MD) - Aprenda a documentar APIs Ktor com OpenAPI e Swagger UI em Kotlin: contrato, rotas, exemplos, versionamento e boas práticas para backend.
- [Boas Práticas em Kotlin Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/boas-praticas-kotlin.MD) - Aprenda boas práticas e code style em Kotlin: convenções de nomenclatura, formatação, padrões idiomáticos e ferramentas como ktlint e detekt.
- [Delegação de Propriedades em Kotlin Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/delegacao-propriedades.MD) - Aprenda delegação de propriedades em Kotlin: by, lazy, observable, vetoable, map delegation e delegates customizados com exemplos práticos.
- [Layouts com Jetpack Compose Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/jetpack-compose-layouts.MD) - Aprenda layouts no Jetpack Compose: Row, Column, Box, LazyColumn, Scaffold, Modifier e layouts responsivos. Tutorial completo em português.
- [Jetpack Compose: Introdução Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/jetpack-compose-basico.MD) - Aprenda Jetpack Compose do zero com Kotlin. Tutorial completo sobre UI declarativa, Composables, estado e Material Design 3.
- [Primeiro App Android com Kotlin Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/primeiro-app-android.MD) - Crie seu primeiro app Android com Kotlin do zero. Tutorial prático com Jetpack Compose, navegação e persistência de dados.
- [Configurando Kotlin no Android Studio Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/kotlin-android-studio.MD) - Aprenda a configurar Kotlin no Android Studio do zero. Tutorial completo com instalação, SDK e primeiro projeto Android.
- [Coroutines Avançadas: Flow e Channel Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/coroutines-avancado.MD) - Aprenda Coroutines avançadas em Kotlin com Flow e Channel. Tutorial completo com exemplos práticos de programação assíncrona.
- [Kotlin DSL Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/kotlin-dsl-tutorial.MD) - Aprenda a criar DSLs em Kotlin: builder pattern, lambda with receiver, @DslMarker e type-safe builders. Tutorial completo com exemplos práticos.
- [Kotlin Multiplatform Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/kotlin-multiplatform-tutorial.MD) - Aprenda Kotlin Multiplatform (KMP): compartilhe código entre Android, iOS e web. Tutorial com expect/actual, Compose Multiplatform e Ktor Client.
- [Gradle com Kotlin DSL Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/kotlin-gradle-tutorial.MD) - Aprenda Gradle com Kotlin DSL: configure build.gradle.kts, dependências, plugins, multi-module e version catalogs. Tutorial completo em PT-BR.
- [Testes Unitários em Kotlin Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/kotlin-testes-unitarios.MD) - Aprenda testes unitários em Kotlin com JUnit 5 e MockK. Tutorial completo com exemplos de assertions, mocking, coroutines e boas práticas.
- [Ktor Framework Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/kotlin-ktor-tutorial.MD) - Aprenda Ktor Framework em Kotlin com Exposed: crie APIs REST com routing, serialização, autenticação, banco de dados e dependências atualizadas.
- [Spring Boot com Kotlin Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/kotlin-spring-boot-tutorial.MD) - Aprenda Spring Boot com Kotlin: REST controllers, services, Spring Data JPA, coroutines no Spring e configurações específicas para Kotlin.
- [MVVM com Kotlin Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/kotlin-mvvm-tutorial.MD) - Aprenda a arquitetura MVVM com Kotlin: ViewModel, LiveData, StateFlow, Repository pattern e injeção de dependência manual. Tutorial completo.
- [Retrofit com Kotlin em 2026: Tutorial Android com OkHttp, Coroutines e Cache | Kotlin Brasil](/tutoriais/kotlin-retrofit-tutorial.MD) - Aprenda Retrofit com Kotlin em apps Android: setup, OkHttp, coroutines, interceptors, autenticação, erros, cache offline e boas práticas de produção.
- [Room Database com Kotlin Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/kotlin-room-database-tutorial.MD) - Aprenda Room Database com Kotlin: Entity, DAO, TypeConverters, migrations, Flow com Room, relacionamentos e testes. Tutorial completo.
- [RecyclerView com Kotlin Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/kotlin-recyclerview-tutorial.MD) - Aprenda RecyclerView com Kotlin: Adapter, ViewHolder, DiffUtil, ListAdapter, múltiplos view types e click handling com exemplos práticos.
- [Kotlin Flow Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/kotlin-flow-tutorial.MD) - Aprenda Kotlin Flow do zero: cold streams, operadores map/filter, StateFlow, SharedFlow, flowOn e tratamento de erros com exemplos práticos.
- [Coroutines em Kotlin Tutorial Básico em Português — Passo a Passo | Kotlin Brasil](/tutoriais/coroutines-tutorial-basico.MD) - Aprenda Coroutines em Kotlin do zero: suspend functions, launch, async/await, dispatchers, structured concurrency e cancelamento neste tutorial.
- [Loops em Kotlin: For, While e Do-While Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/loops-kotlin.MD) - Aprenda a usar loops for, while e do-while em Kotlin com exemplos práticos. Tutorial completo sobre estruturas de repetição em português.
- [Generics em Kotlin Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/generics-kotlin.MD) - Aprenda Generics em Kotlin com exemplos práticos: type parameters, constraints, variance in/out, star projection e reified neste tutorial completo.
- [Sealed Classes em Kotlin Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/sealed-classes-tutorial.MD) - Aprenda Sealed Classes em Kotlin com exemplos práticos: sintaxe, when, sealed vs enum, sealed interfaces e padrões de estado e erro neste tutorial.
- [Data Classes em Kotlin Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/data-classes-tutorial.MD) - Aprenda Data Classes em Kotlin com exemplos práticos: sintaxe, métodos gerados, destructuring, copy e comparação com classes regulares neste tutorial.
- [Extension Functions em Kotlin Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/extension-functions-tutorial.MD) - Aprenda Extension Functions em Kotlin com exemplos práticos: sintaxe, propriedades, nullable receivers, generics e casos de uso reais neste tutorial.
- [If, When e Estruturas Condicionais em Kotlin Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/estruturas-condicionais.MD) - Aprenda a usar if, when e estruturas condicionais em Kotlin com exemplos práticos. Tutorial completo em português para iniciantes.
- [Lambdas em Kotlin Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/lambdas-kotlin.MD) - Aprenda lambdas em Kotlin com exemplos práticos: sintaxe, higher-order functions, it, closures, function references e funções inline neste tutorial.
- [Collections em Kotlin Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/collections-kotlin.MD) - Aprenda collections em Kotlin: List, Set, Map, mutáveis vs imutáveis, filter, map, flatMap, groupBy, sequences e collection builders.
- [Null Safety em Kotlin Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/null-safety-tutorial.MD) - Domine null safety em Kotlin: tipos nullable, safe calls, Elvis operator, non-null assertion, let, smart casts e platform types com exemplos.
- [Interfaces em Kotlin Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/interfaces-kotlin.MD) - Aprenda interfaces em Kotlin: declaração, implementação, default methods, properties, herança múltipla e delegation com exemplos completos.
- [Herança em Kotlin Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/heranca-kotlin.MD) - Domine herança em Kotlin: open classes, override, super, classes abstratas, sealed classes é a classe Any com exemplos práticos passo a passo.
- [Variáveis e Tipos de Dados em Kotlin Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/variaveis-e-tipos.MD) - Domine variáveis val e var, tipos de dados primitivos e inferência de tipos em Kotlin com exemplos práticos neste tutorial completo.
- [Classes e Objetos em Kotlin Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/classes-e-objetos-kotlin.MD) - Aprenda classes e objetos em Kotlin: construtores, properties, getters/setters, init blocks, companion objects e modificadores de visibilidade.
- [Funções em Kotlin Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/funcoes-kotlin.MD) - Aprenda a criar funções em Kotlin: palavra-chave fun, parâmetros, retorno, default parameters, named arguments e vararg com exemplos práticos.
- [Primeiro Programa em Kotlin Tutorial em Português — Passo a Passo | Kotlin Brasil](/tutoriais/primeiro-programa-kotlin.MD) - Aprenda a criar seu primeiro programa em Kotlin do zero com este tutorial passo a passo em português. Configure o ambiente e escreva Hello World.
