quinta-feira, novembro 21, 2024
spot_img
InícioRamos da InformáticaNovidadesMeta substitui linguagem de programação Java pela Kotlin

Meta substitui linguagem de programação Java pela Kotlin

A Meta, controladora do Facebook, migrou o código Java de seu aplicativo Android para Kotlin. Esta é uma linguagem de programação mais atual que também depende da Java Virtual Machine, ou JVM. Sendo assim, a Meta substitui linguagem de programação Java pela Kotlin (Vantagens do Kotlin em relação ao Java (Java vs Kotlin?).

Criado pelo fabricante de ferramentas de software JetBrains, o Kotlin estreou em 2011 e em 2016 atingiu sua versão 1.0. No ano seguinte, foi adotada pelo Google como uma linguagem de primeira classe (suportada) para desenvolvimento Android e foi colocada sob a gestão de sua própria fundação, financiada pela JetBrains e Google.

Até então, a maioria dos aplicativos Android eram escritos em Java. Em maio de 2019, em sua conferência de desenvolvedores, o Google começou a incentivar os desenvolvedores do Android a favorecer o Kotlin em vez do Java. No final do ano, a gigante das buscas disse que 60% dos 1.000 principais aplicativos Android continham código Kotlin.

Meta substitui linguagem de programação Java pela Kotlin

A lógica do Google para usar o Kotlin é que ele é mais conciso, seguro, suporta simultaneidade estruturada para facilitar o código assíncrono e é interoperável com Java. Também pode ter algo a ver com a Oracle, administradora de Java, que passou mais de uma década perseguindo (e acabou perdendo) uma reivindicação de violação contra o Google pelo uso de APIs Java no Android.

Meta parece estar igualmente intrigado com Kotlin e, como explica o engenheiro de software do Facebook Omer Strulovich, o negócio de anúncios sociais que virou grande apostador de VR vem substituindo o código Java em vários de seus populares aplicativos Android – Facebook, Instagram, Messenger, Portal e o Missão – com Kotlin.

Aposte na Mega da Virada 2024!

Prepare-se para uma chance única de mudar sua vida. O prêmio histórico de R$ 600 milhões da Mega da Virada 2024 está esperando por você!

Além disso, conheça os bolões da Sorte Online, que são os mais premiados e oferecem as melhores chances de ganhar! Ao participar dos bolões, você se junta a centenas de apostadores e aumenta suas chances de faturar uma bolada.

Faça sua Aposta Agora

Adequadamente para uma empresa fundada como uma rede social, Meta quer sair com o público popular.

“O Kotlin é geralmente considerado uma linguagem melhor que o Java, com classificações de favorabilidade mais altas do que o Java na pesquisa anual de desenvolvedores do Stack Overflow”, disse Strulovich, observando que o Kotlin se tornou uma linguagem popular para o desenvolvimento do Android “[s] então só faz sentido que mudaríamos nosso desenvolvimento Android na Meta para Kotlin…”

Vantagens do Kotlin em relação ao Java (Java vs Kotlin)

Vantagens do Kotlin em relação ao Java (Java vs Kotlin)
As diferenças entre Java e Kotlin (Java vs Kotlin)

Mas além de sua popularidade no ecossistema Android – que Strulovich admite que no mercado mais amplo fica aquém do Java, em algum lugar entre as três principais linguagens de programação, dependendo de quem você pergunta – Kotlin tem algumas vantagens práticas.

Isso inclui: nulidade, para ajudar a evitar erros de referência nula ao oferecer suporte a tipos que não podem ter um valor nulo; suporte para programação funcional via funções inline e expressões lambda; código mais conciso; e suporte para Domain Specific Languages ??(DSLs), linguagens de programação de escopo limitado para tarefas específicas.

A transição também teve desvantagens. Bases de código mistas podem ser difíceis de manter e o Kotlin, que existe há menos tempo que o Java, tem um conjunto de ferramentas menos maduro. Redex, otimizador de bytecode Android do Facebook, precisava ser atualizado. O mesmo aconteceu com Pygments, um marcador de sintaxe. Além disso, algumas bibliotecas internas para otimizar o bytecode durante a compilação não funcionavam com Kotlin e precisavam ser atualizadas. E novas ferramentas como Ktfmt, um formatador Kotlin determinístico, tiveram que ser construídas.

Nossos aplicativos Android para Facebook, Messenger e Instagram têm mais de 1 milhão de linhas de código Kotlin, e a taxa de conversão está aumentando

A Meta poderia ter decidido escrever apenas um novo código em Kotlin, mas optou por converter todos os seus aplicativos Android.

“Hoje, nossos aplicativos Android para Facebook, Messenger e Instagram têm mais de 1 milhão de linhas de código Kotlin, e a taxa de conversão está aumentando”, disse Strulovich. “No total, nossa base de código Android tem mais de 10 milhões de linhas de código Kotlin.”

Strulovich não disse quando a Meta começou essa transição – os desenvolvedores da empresa discutiram o uso de Kotlin em larga escala em uma conferência no ano passado – ou qual porcentagem de seu código de aplicativo Android foi convertida. 

Dez milhões de linhas de Kotlin nesta transição, Meta percebeu alguns benefícios. Por exemplo, embora o código Kotlin seja mais curto, talvez não seja tanto quanto o esperado.

“Em média, vimos uma redução de 11% no número de linhas de código dessa migração”, disse Strulovich. “Vimos números muito mais altos citados online, mas suspeitamos que esses números sejam derivados de exemplos específicos”.

Parte da redução de código insatisfatória é que muito do código do aplicativo que está sendo traduzido consiste em definições de interface do usuário, que permanecem as mesmas em Java vs Kotlin.

Strulovich também disse que não houve regressões de velocidade, então pelo menos os aplicativos convertidos mantiveram seu desempenho. O tamanho da compilação dos aplicativos em Kotlin também não provou ser um problema, embora os tempos de compilação tenham sofrido – isso era esperado, já que a compilação Kotlin não recebeu tanta atenção quanto a compilação Java.

A migração do Meta está em andamento e acelerando, disse Strulovich. Enquanto isso, a popularidade do Java, em pelo menos uma medida, caiu 4,7% nos últimos cinco anos.

“O Kotlin ainda carece de algumas das ferramentas e otimizações com as quais nos acostumamos ao trabalhar com Java”, disse Strulovich. “Mas estamos trabalhando para fechar essas lacunas. À medida que progredimos e essas ferramentas e bibliotecas amadurecem, também trabalharemos para liberá-las de volta à comunidade.”

LEIA TAMBÉM:

Transforme-se em um Especialista em Dados, uma das áreas mais bem remuneradas atualmente: Formação completa em Engenheiro de Dados Projetos com situações do dia a dia.

Compartilhe este artigo e fortaleça sua marca pessoal agora mesmo!
Ramos da Informática
Ramos da Informáticahttps://ramosdainformatica.com.br
Ramos da Informática é um hub de comunidade sobre linguagens de programação, banco de dados, DevOps, Internet das Coisas, tecnologia da indústria 4.0, Cyber Segurança e Startups.
Sua assinatura não pôde ser validada.
Você fez sua assinatura com sucesso.

E-Zine Ramos da Informática

Assine o E-Zine e tenha Conteúdo Exclusivo, Concursos para assinantes, descontos exclusivos e uma área de conteúdos exclusivos só do E-zine.

ARTIGOS RELACIONADOS
- Advertisment -spot_img

Seja um autor

Compartilhe seu conhecimento e inspire outros desenvolvedores! Torne-se um autor e publique seus artigos no nosso site. Junte-se a nós!

MAIS LIDOS

Lâmpada Inteligente Smart Color

10W Elgin RGB Wifi, compatível com Alexa e Google Home

- Advertisment -spot_img

APOIE CONTEÚDOS COMO ESTE

Apoie o Site e Nossos Conteúdos!
Cada compra feita através dos nossos links de afiliados nos ajuda a manter este site, a E-Zine e a trazer cada vez mais conteúdos relevantes para você.

Além de garantir sua compra sem custo adicional, você nos dá força para continuar criando e compartilhando. Obrigado por fazer parte desta jornada conosco!

Como Convencer Alguém em 90 Segundos

📚 Como Convencer Alguém em 90 Segundos - eBook Kindle

R$ 19,90 - 60% de economia!

💡 Leia Grátis com o Kindle Unlimited - 30 dias de teste gratuito.

🔹 Não precisa de Kindle! Leia no seu tablet, smartphone ou computador com o app Kindle.

Leia Agora no Kindle