Estou querendo criar um aplicativo que funcione bem diversas plataformas. Como sei quais linguagens, frameworks e ferramentas são adequados para mim?
Esta é uma pergunta comum que ouvimos dos desenvolvedores da comunidade. Às vezes, é seguida por uma pequena alfinetada – com todas as opções do Google, pode ser difícil decidir – e nós ouvimos vocês!
Tomar a decisão certa para o seu aplicativo depende de uma variedade de fatores, incluindo as metas da equipe e do produto. Estamos trabalhando para facilitar as ofertas do Google para você. Nesta postagem do blog, ofereceremos algumas orientações para ajudar a escolher o conjunto de tecnologias certo para o seu projeto.
Kotlin é a linguagem de programação recomendada se você deseja utilizar os recursos mais recentes e exclusivos do Android para o seu aplicativo. Ao usar o Kotlin com o Jetpack Compose, o moderno kit de ferramentas de IU do Android desenvolvido no Kotlin, você tem acesso aos recursos e serviços mais recentes e completos específicos para Android, permitindo a criação de aplicativos premium e de alta qualidade. Além disso, você tem acesso ao melhor desempenho de aplicativos em todos os tipos de dispositivos e telas em que o Android é executado, incluindo: telefones, tablets, dobráveis, laptops, relógios, TVs, carros e muito mais. Um aplicativo Kotlin para Android também é a melhor escolha para aplicativos que precisam de uma integração profunda com hardware e plataforma Android. O uso do Kotlin e do Jetpack Compose simplifica e acelera o desenvolvimento da IU no Android com a edição de código no Live Edit, o suporte à ferramenta de visualização de IU do Compose no Android Studio e as APIs intuitivas do Kotlin. Veja mais detalhes sobre como começar a usar o Compose.
O Kotlin Multiplatform (KMP) é a maneira que recomendamos de compartilhar a lógica de negócios entre seus aplicativos. No Google I/O deste ano, anunciamos que o Android terá suporte ao Kotlin Multiplatform para compartilhar a lógica de negócios entre dispositivos móveis, computadores, Web e servidores. O uso do KMP permite compilar o código do Kotlin em binários específicos da plataforma (por exemplo, Android, iOS, JVM, WASM) para que você possa chamar APIs específicas da plataforma com o mínimo de overhead. O KMP ajuda a reduzir a duplicação de código e facilita a manutenção da lógica de negócios compartilhada, e você continuará criando sua IU utilizando APIs específicas da plataforma. Veja mais detalhes sobre as atualizações mais recentes do Kotlin Multiplatform para Android.
O Flutter é o SDK recomendado pelo Google para quando você deseja compartilhar a lógica de negócios e o código da IU entre todas as plataformas para oferecer uma experiência de usuário consistente e confiável. Com o Flutter, você pode criar experiências incríveis em aplicativos para Android, iOS, Web e computadores (Windows, macOS, Linux), tudo a partir de uma base de código de aplicativo única e compartilhada. Os aplicativos Flutter são escritos usando a linguagem de programação Dart, que é compilada diretamente para código de máquina (por exemplo, ARM, x86, RISC-V) na maioria das plataformas (por exemplo, iOS, Android). O Dart também é usado na Web, sendo compilado para JavaScript e, conforme anunciado hoje no Google I/O, também para WebAssembly. O Dart também conta com hot-reload com estado durante o desenvolvimento, que os desenvolvedores do Flutter usam para iterar rapidamente as alterações visuais. Veja mais detalhes sobre como começar a usar o Flutter.
Como queremos continuar oferecendo opções, estamos trabalhando ativamente para melhorar a interoperabilidade do Flutter e do Kotlin com várias plataformas.
Você pode escolher a estratégia que melhor se adapte ao seu negócio, seja compartilhando a IU e a lógica de negócios em várias plataformas com o Flutter ou desenvolvendo com o Kotlin Multiplatform para ter uma lógica de negócios compartilhada. Esperamos que essas tecnologias permitam que você crie ótimos aplicativos com mais rapidez e eficiência.