BT

Início Notícias Kotlin 1.2 apresenta projetos multi plataforma

Kotlin 1.2 apresenta projetos multi plataforma

Favoritos

A última versão do Kotlin tornou possível o compartilhamento de código para a JVM e a plataforma JavaScript usando projetos multi plataforma. Além disso, inclui melhorias na linguagem e na biblioteca, e melhor performance no compilador.

Após a adição do suporte ao JavaScript no Kotlin 1.1, o Kotlin agora apresenta aos desenvolvedores a possibilidade de gerenciar facilmente projetos destinados a serem executados tanto na JVM como em plataformas JavaScript. No futuro, suporte aos binários nativos também serão incluídos graças ao Kotlin Native.

A ideia básica com projetos multi plataforma é organizar os módulos em um conjunto de módulos comuns e específicos da plataforma. Módulos específicos contém código que executam na JVM ou no JavaScript e podem acessar livremente as bibliotecas específicas de plataforma. Para cada módulo específico de cada plataforma, um módulo comum deve existir para fornecer as chamadas "declarações esperadas", por exemplo declarações que devem ser implementadas em um módulo específico da plataforma. Graças a esse mecanismo, é possível executar o código de uma plataforma específica de um código de uma plataforma independente. Enquanto que os módulos comuns podem somente conter código Kotlin e usar as bibliotecas Kotlin, módulos de plataforma podem conter também códigos em Java ou JavaScript.

Como exemplo, segue como definir um módulo comum e o módulo correspondente de plataforma:

// Common module

package org.jetbrains.foo

expect class Foo(bar: String) {
    fun frob()
}

fun main(args: Array) {
    Foo("Hello").frob()
}

// JVM module

package org.jetbrains.foo

actual class Foo actual constructor(val bar: String) {
    actual fun frob() {
        println("Frobbing the $bar")
    }
}

Um desenvolvimento importante com o objetivo de tornar a Kotlin mais capaz de expressar comportamentos em módulos comuns é um conjunto de bibliotecas multi plataformas, incluindo uma biblioteca de serialização, uma biblioteca de testes e uma biblioteca HTML isomórfica. Isso deve reduzir a necessidade de recorrer aos módulos da plataforma.

No front da linguagem, o Kotlin 1.2 fornece casts melhorados e inferência de tipos em certos casos como um novo pacote kotlin.math na biblioteca padrão e novas funções de biblioteca padrão para trabalhar com sequências e coleções.

Como última nota, o compilador do Kotlin ficou significativamente mais rápido na versão 1.2, superando o Kotlin 1.1 em 25%. Outras melhorias são planejadas para futuros lançamentos menores do 1.2.

É possível obter mais detalhes sobre as novidades do Kotlin 1.2, que já está incluído no IntelliJ IDEAD 2017.3, nas notas oficiais da versão.

Avalie esse artigo

Relevância
Estilo/Redação

Olá visitante

Você precisa cadastrar-se no InfoQ Brasil ou para enviar comentários. Há muitas vantagens em se cadastrar.

Obtenha o máximo da experiência do InfoQ Brasil.

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Comentários da comunidade

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

BT

Seu cadastro no InfoQ está atualizado? Poderia rever suas informações?

Nota: se você alterar seu email, receberá uma mensagem de confirmação

Nome da empresa:
Cargo/papel na empresa:
Tamanho da empresa:
País:
Estado:
Você vai receber um email para validação do novo endereço. Esta janela pop-up fechará em instantes.