O quê é Kotlin Native?
Lissa Ferreira
Posted on October 18, 2021
Kotlinautas
Esse conteúdo é oferecido e distribuído pela comunidade Kotlinautas, uma comunidade brasileira que busca oferecer conteúdo gratuito sobre a linguagem Kotlin em um espaço plural.
Kotlin Native
Kotlin Native é uma tecnologia criada pela JetBrains para compilar código Kotlin em binários nativos do sistema, esses binários podem ser executados sem a necessidade de uma máquina virtual, pois esse binário pode ser executado diretamente pelo sistema.
Kotlin Native suporta as seguintes plataformas:
- macOS
- iOS, tvOS, watchOS
- Linux
- Windows
- Android
O executável criado pela Kotlin Native pode rodar em todas plataformas ao mesmo tempo (execeto se você utilizar alguma biblioteca exclusiva para uma plataforma, como uma biblioteca para criação de apps para iOS).
Materiais
Será necessário ter o IntelliJ instalado na máquina e um conhecimento básico sobre a linguagem Kotlin.
Criando projeto
Primeiro precisamos criar o projeto. Esse projeto pode ser criado em em File > New > Project, depois, vá á seção Kotlin, e preencha o campo Name com o nome do projeto, como native, selecione a localização do projeto, e na seção Project Template selecione Native Application.
Após isso,clique em Finish no proximo menu para criar o projeto.
Após isso, o projeto foi criado com Kotlin Native.
Criando nosso código
Por padrão, há um arquivo em src/NativeMain/kotlin/main.kt
que é o arquivo principal da aplicação. Nesse arquivo há apenas um println
que mostra a string Hello, Kotlin/Native!
na tela:
fun main() {
println("Hello, Kotlin/Native!")
}
Vamos modificar esse código. Vamos criar uma variável texto
que irá armazenar uma string. Depois vamos mostrar algumas informações sobre essa string, como a quantidade de letras, quantidade de palavras,etc. E vamos mostrar essas informações na tela.
Primeiro, vamos criar essa variável texto
:
fun main() {
val texto = "Essa string é fixa"
}
Agora vamos criar uma série de variáveis que vão representar fatos sobre essa string, como o seu tamanho por exemplo:
fun main() {
val texto = "Essa string é fixa"
val tamanho = texto.length
val quantidadeDePalavras = texto.split(" ").size
val primeiraPalavra = texto.split(" ").first()
val ultimaPalavra = texto.split(" ").last()
val maiúsculo = texto.uppercase()
}
Agora vamos mostrar na tela essas variáveis que criamos de uma maneira intuitiva, usando as Template Strings:
fun main() {
val texto = "Essa string é fixa"
val tamanho = texto.length
val quantidadeDePalavras = texto.split(" ").size
val primeiraPalavra = texto.split(" ").first()
val ultimaPalavra = texto.split(" ").last()
val maiúsculo = texto.uppercase()
println("O tamanho do texto é $tamanho, a quantidade de palavras é $quantidadeDePalavras, a primeira palavra é $primeiraPalavra, a ultima palavra é $ultimaPalavra, e o texto em maíúsculo é $maiúsculo")
}
Rodando o código
Podemos rodar o código atual clicando na seta verde ao lado da função main
. Rodando esse código, o resultado será:
> Task :runDebugExecutableNative
O tamanho do texto é 18, a quantidade de palavras é 4, a primeira palavra é Essa, a ultima palavra é fixa, e o texto em maíúsculo é ESSA STRING É FIXA
Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.
You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.
See https://docs.gradle.org/7.1/userguide/command_line_interface.html#sec:command_line_warnings
BUILD SUCCESSFUL in 8s
3 actionable tasks: 3 executed
Task execution finished 'runDebugExecutableNative'.
Podemos ver a parte referente ao nosso código na segunda linha, informando sobre o texto que criamos.
Binário Final
O binário final está localizado em /build/bin/native/debugExecutable/native.kexe
, esse binário pode ser executado diretamente via linha de comando com native.kexe
no Windows e ./native.kexe
no Linux/MacOS.
Finalização
Neste artigo, você aprendeu como utilizar Kotlin Native para criar binários nativos, podendo usar programas feitos em Kotlin sem a necessidade de uma JVM.
Busque agora fazer exercícios, ou idéias próprias usando Kotlin Native para praticar.
Muito obrigada por ler ❤️🏳️⚧️ e me segue nas redes, é tudo @lissatransborda 👀
Posted on October 18, 2021
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.