Neste tutorial, você vai aprender a criar seu primeiro programa em Kotlin do absoluto zero. Vamos configurar o ambiente de desenvolvimento, entender a estrutura básica de um programa Kotlin e executar o clássico “Hello, World!”. Ao final, você terá uma base sólida para avançar nos próximos tutoriais da série.
Por que Aprender Kotlin?
Kotlin é uma linguagem de programação moderna, concisa e segura, criada pela JetBrains e oficialmente suportada pelo Google para desenvolvimento Android. Mas Kotlin vai muito além do mobile: você pode usá-la para desenvolvimento backend com frameworks como Ktor e Spring Boot, para aplicações desktop, e até para desenvolvimento multiplataforma com Kotlin Multiplatform.
Uma das maiores vantagens de Kotlin é a sua interoperabilidade com Java. Isso significa que você pode usar qualquer biblioteca Java existente diretamente no seu código Kotlin, sem nenhuma configuração especial. Além disso, Kotlin possui recursos modernos como null safety, coroutines para programação assíncrona, e uma sintaxe muito mais enxuta que Java.
Se você vem de outras linguagens como Python, JavaScript ou Java, vai perceber que Kotlin combina o melhor de vários mundos: a segurança de tipos de Java, a concisão de Python e recursos funcionais inspirados em Scala e outras linguagens modernas.
Configurando o Ambiente de Desenvolvimento
Antes de escrever qualquer código, precisamos configurar o ambiente. Existem várias formas de trabalhar com Kotlin, e vamos explorar as principais opções.
Opção 1: IntelliJ IDEA (Recomendado)
A forma mais prática de programar em Kotlin é usando o IntelliJ IDEA, a IDE criada pela mesma empresa que desenvolveu Kotlin. Você pode baixar a versão Community (gratuita) no site oficial da JetBrains.
Após instalar o IntelliJ IDEA, siga estes passos:
- Abra o IntelliJ IDEA e clique em “New Project”
- Selecione “Kotlin” no menu lateral
- Escolha “JVM | IDEA” como template
- Defina o nome do projeto como “MeuPrimeiroKotlin”
- Clique em “Create”
Opção 2: Kotlin Playground Online
Se você quer começar imediatamente sem instalar nada, pode usar o Kotlin Playground diretamente no navegador acessando play.kotlinlang.org. Essa é uma excelente opção para testar pequenos trechos de código e experimentar a linguagem.
Opção 3: Linha de Comando
Você também pode instalar o compilador Kotlin via SDKMAN ou Homebrew:
// Instalação via SDKMAN (Linux/Mac)
// No terminal: sdk install kotlin
// Após instalar, você pode compilar e executar assim:
// kotlinc hello.kt -include-runtime -d hello.jar
// java -jar hello.jar
Escrevendo o Primeiro Programa: Hello, World!
Agora que o ambiente está configurado, vamos escrever nosso primeiro programa. Em Kotlin, o ponto de entrada de qualquer aplicação é a função main. Diferente de Java, você não precisa criar uma classe para isso.
fun main() {
println("Olá, Mundo! Bem-vindo ao Kotlin!")
}
Vamos entender cada parte deste código:
fun: é a palavra-chave usada para declarar uma função em Kotlin. Toda função começa comfun.main: é o nome da função principal. O compilador Kotlin procura essa função como ponto de entrada do programa.(): os parênteses indicam que a função não recebe nenhum parâmetro. Em versões anteriores, era obrigatório declararargs: Array<String>, mas desde o Kotlin 1.3 isso é opcional.println(): é a função que imprime uma linha no console. Ela adiciona automaticamente uma quebra de linha ao final.
Execute o programa e você verá a mensagem “Olá, Mundo! Bem-vindo ao Kotlin!” no console. Parabéns, você acabou de criar seu primeiro programa em Kotlin!
Expandindo o Programa: Variáveis e Entrada do Usuário
Agora vamos tornar o programa mais interessante adicionando variáveis e interação com o usuário.
fun main() {
println("=== Meu Primeiro Programa em Kotlin ===")
println()
// Declarando variáveis com val (imutável) e var (mutável)
val linguagem = "Kotlin"
val versao = "2.0"
var contador = 0
println("Bem-vindo ao curso de $linguagem $versao!")
println()
// Pedindo o nome do usuário
print("Qual é o seu nome? ")
val nome = readlnOrNull() ?: "Visitante"
contador++
println("Olá, $nome! Você é o visitante número $contador.")
println()
// Usando string templates mais elaborados
val mensagem = """
|Resumo do Programa:
| Linguagem: $linguagem
| Versão: $versao
| Usuário: $nome
| Execuções: $contador
""".trimMargin()
println(mensagem)
// Operações básicas
val anoAtual = 2025
val anoCriacao = 2011
println("Kotlin existe há ${anoAtual - anoCriacao} anos!")
}
Neste exemplo expandido, introduzimos vários conceitos importantes:
valdeclara uma variável imutável (comofinalem Java). Uma vez atribuído o valor, ele não pode ser alterado. Prefira sempre usarvalquando possível.vardeclara uma variável mutável, cujo valor pode ser alterado depois.- String templates permitem inserir variáveis e expressões diretamente dentro de strings usando
$variavelou${expressao}. readlnOrNull()lê uma linha da entrada padrão e retornanullse não houver entrada disponível.- Operador Elvis
?:fornece um valor padrão quando a expressão à esquerda énull. Este é um recurso fundamental do sistema de null safety do Kotlin. - Multiline strings (triple-quoted strings) permitem criar strings com várias linhas de forma legível, e
trimMargin()remove os espaços à esquerda até o caractere|.
Entendendo a Estrutura do Projeto
Quando você cria um projeto Kotlin no IntelliJ IDEA, a estrutura de diretórios segue uma convenção padrão. O arquivo principal fica em src/main/kotlin/ e os arquivos de teste ficam em src/test/kotlin/. O arquivo de configuração do build system (Gradle) fica na raiz do projeto.
É importante entender que Kotlin compila para bytecode da JVM por padrão, o que significa que seu código Kotlin roda na Java Virtual Machine exatamente como código Java. Isso garante compatibilidade com todo o ecossistema Java existente e performance de nível de produção.
Cada arquivo Kotlin tem a extensão .kt. Diferentemente de Java, o nome do arquivo não precisa corresponder ao nome da classe, e você pode ter múltiplas classes, funções e até variáveis de nível superior no mesmo arquivo.
Dicas e Erros Comuns
Ao criar seus primeiros programas em Kotlin, fique atento aos seguintes pontos:
Esquecer o
funantes demain: toda função precisa da palavra-chavefun. Sem ela, o compilador não reconhece a declaração.Confundir
valevar: lembre-se quevalé imutável. Se você tentar reatribuir um valor a uma variávelval, o compilador vai gerar um erro. Usevarapenas quando realmente precisar alterar o valor posteriormente.Ponto e vírgula não é necessário: diferente de Java e C, Kotlin não exige ponto e vírgula no final das linhas. O compilador infere automaticamente o fim de cada instrução. Embora o ponto e vírgula seja permitido, ele é considerado não-idiomático.
Usar
printlnvsprint:printlnadiciona uma quebra de linha no final, enquantoprintnão. Escolha conforme a necessidade do seu programa.Não usar a inferência de tipos: Kotlin possui um poderoso sistema de inferência de tipos. Você não precisa declarar o tipo explicitamente quando ele pode ser deduzido pelo compilador. Por exemplo,
val nome = "Kotlin"já sabe quenomeé do tipoString.Ignorar warnings do compilador: o compilador Kotlin é muito inteligente e gera avisos úteis. Sempre leia e corrija os warnings, pois eles frequentemente apontam para problemas reais no código.
Conclusão e Próximos Passos
Parabéns por criar seu primeiro programa em Kotlin! Você aprendeu a configurar o ambiente de desenvolvimento, entendeu a estrutura básica de um programa, trabalhou com variáveis, string templates e entrada do usuário. Esses são os fundamentos sobre os quais todo o restante da linguagem é construído.
Kotlin é uma linguagem que recompensa o aprendizado gradual. Cada novo conceito se conecta naturalmente ao anterior, e a sintaxe concisa permite que você se concentre na lógica do programa em vez de ficar lutando com boilerplate desnecessário.
Nos próximos tutoriais, vamos aprofundar cada um dos conceitos que introduzimos aqui. Recomendo seguir esta ordem:
- Variáveis e Tipos de Dados — entenda em detalhes o sistema de tipos do Kotlin
- Estruturas Condicionais — aprenda a controlar o fluxo do seu programa com
if,whene mais - Funções em Kotlin — domine a criação de funções reutilizáveis e expressivas
Continue praticando e experimentando no Kotlin Playground ou no IntelliJ IDEA. A melhor forma de aprender uma linguagem de programação é escrevendo código todos os dias, mesmo que sejam pequenos programas de prática. Até o próximo tutorial!