Compose Multiplatform para Kotlin: guia completo com exemplos

Treinador Online de Python para Iniciantes

Aprenda Python facilmente sem sobrecarga teórica. Resolva tarefas práticas com verificação automática e escreva código diretamente no navegador.

Start Course

Compose Multiplatform para Kotlin: Guia Completo

Bem-vindo ao guia mais completo sobre Compose Multiplatform (CMP) — a tecnologia moderna da JetBrains que permite criar interfaces de usuário nativas para Android, iOS, Desktop (Windows, macOS, Linux) e Web, usando um único código em Kotlin. Neste artigo, vamos abordar tudo: desde a instalação até técnicas avançadas e melhores práticas.

1. O que é e por que usar?

Compose Multiplatform é um framework declarativo para construção de interfaces de usuário, baseado no Jetpack Compose do Google, mas estendido para funcionar em múltiplas plataformas. Diferente de abordagens tradicionais (como XML separado para Android e SwiftUI para iOS), o CMP permite escrever a lógica de UI uma única vez e compilá-la em código nativo para cada plataforma alvo.

Por que usar? Primeiro, redução drástica no tempo de desenvolvimento: em vez de manter duas ou mais bases de código, você trabalha com uma só. Segundo, consistência de UI: a lógica de negócios e a aparência do aplicativo são idênticas em todas as plataformas, simplificando testes e manutenção. Terceiro, acesso a APIs nativas: você pode usar código específico da plataforma (como câmera ou geolocalização) através do mecanismo expect/actual, sem sair do ecossistema Kotlin.

O Compose Multiplatform é ideal para startups, equipes de produto e desenvolvedores que desejam alcançar o máximo de público sem duplicar esforços. A biblioteca é ativamente mantida pela JetBrains e pela comunidade, sendo em 2025 uma das soluções mais promissoras no mundo do desenvolvimento multiplataforma.

2. Instalação

Como o Compose Multiplatform não é uma biblioteca no sentido tradicional (como um pacote pip), mas sim um conjunto de plugins e configurações para Gradle, a instalação é feita através do sistema de build do Kotlin Multiplatform. Veja o passo a passo para criar um novo projeto:

Passo 1: Criar projeto no IntelliJ IDEA (recomendado)

Abra o IntelliJ IDEA (Community ou Ultimate), vá em File → New → Project. No assistente, selecione o template Compose Multiplatform. Dê um nome ao projeto e clique em "Finish". A IDE gerará automaticamente a estrutura e todas as dependências necessárias.

Passo 2: Configuração manual (para projetos existentes)

Adicione o seguinte código ao arquivo build.gradle.kts raiz:

plugins {
    kotlin("multiplatform") version "2.0.21"
    id("org.jetbrains.compose") version "1.7.1"
    id("org.jetbrains.kotlin.plugin.compose") version "2.0.21"
}

kotlin {
    androidTarget()
    listOf(
        iosX64(),
        iosArm64(),
        iosSimulatorArm64()
    ).forEach { iosTarget ->
        iosTarget.binaries.framework {
            baseName = "ComposeApp"
            isStatic = true
        }
    }

    sourceSets {
        val commonMain by getting {
            dependencies {
                implementation(compose.runtime)
                implementation(compose.foundation)
                implementation(compose.material3)
                implementation(compose.ui)
            }
        }
        val androidMain by getting {
            dependencies {
                implementation("androidx.activity:activity-compose:1.9.3")
            }
        }
    }
}

Importante: As versões dos plugins e do Kotlin devem ser compatíveis. As versões atualizadas podem ser encontradas no repositório GitHub do Compose Multiplatform.

3. Início rápido — exemplo mínimo funcional

Após criar o projeto, abra o arquivo commonMain/kotlin/App.kt e substitua o conteúdo pelo código abaixo:

import androidx.compose.foundation.layout.*
import androidx.compose.material3.*
i                    

Recommendations