Ramos da InformáticaNovidadesMeta Sobe a Jogada: Java é Substituído por Kotlin

Meta Sobe a Jogada: Java é Substituído por Kotlin

-

Ramos da Informática
JS TS IA

Pesquisa: Como você está usando IA na sua rotina Dev?

Responda em menos de 2 minutos e ajude a direcionar nossos próximos artigos técnicos, guias e conteúdos.

Responder Pesquisa →

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.

Dica de Leitura: Se você está interessado em entender melhor as práticas de desenvolvimento para Android, especialmente agora que a Meta está migrando para Kotlin, é importante conhecer as melhores práticas e diretrizes oferecidas pelo próprio Google. Confira o artigo Google lança ‘Now in Android’ sobre práticas de desenvolvimento para saber mais sobre como criar aplicativos Android de alta qualidade e segurança.

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.

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.

english-interview-debugger.sh
$ grep -r "senior_dev_communication" ./career
[CRITICAL_ERROR] Código sênior detectado, mas fluência falhou no runtime.
Motivo: Travou na hora de explicar a arquitetura (System Design) em inglês para o gringo.

O mercado internacional não quer um robô de gramática. Quer um dev que saiba defender uma tomada de decisão técnica sob pressão. Destrave sua conversão na Preply com aulas particulares focadas em TI.

$ ./fix-english.sh --target=remote-job
Achar Professor Particular ➔

“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:


✦ Recomendação do Editor

Eleve o seu nível no assunto

Se você está procurando aprender mais sobre o uso de Kotlin no desenvolvimento de aplicativos Android após ler nosso artigo sobre a substituição de Java pela Kotlin na Meta, eu recomendo procurar por ‘Curso de Desenvolvimento Android com Kotlin’.

Com o mercado de desenvolvimento Android em constante evolução, estudar Kotlin é uma ótima maneira de se manter atualizado e aumentar suas chances de emprego. Além disso, aprendendo Kotlin você poderá criar aplicativos mais concisos, seguros e performáticos, o que vai dar uma visão mais completa e profunda para a sua carreira de desenvolvedor Android. Com o nosso curso, você aprenderá os recursos e recursos da linguagem, bem como como implementá-los em projetos reais. Não perca a oportunidade de se tornar um especialista em desenvolvimento Android com Kotlin!



Ver ofertas em destaque na Amazon


Ajude a manter este projeto, a Ramos da Informática pode ganhar uma comissão sobre as vendas qualificadas.
Ramos da Informática
JS TS IA

Pesquisa: Como você está usando IA na sua rotina Dev?

Responda em menos de 2 minutos e ajude a direcionar nossos próximos artigos técnicos, guias e conteúdos.

Responder Pesquisa →
Ramos da Informática
Ramos da Informáticahttps://ramosdainformatica.com.br
Ramos da Informática é um hub de comunidade dedicado a linguagens de programação, banco de dados, DevOps, Internet das Coisas (IoT), tecnologias da Indústria 4.0, cibersegurança e startups. Com curadoria de conteúdos de qualidade, o projeto é mantido por Ramos de Souza Janones.

Mais recentes

NVIDIA Lança Cosmos 3: Nova Plataforma de IA Física para Robôs Humanoides e Fábricas Inteligentes

NVIDIA apresenta plataforma full-stack para robôs humanoides, robotáxis e fábricas inteligentes Cosmos 3, robôs humanoides e ferramentas para robotáxis são...

Repositórios e Skills Essenciais para Claude Code, Cursor e Codex

Se você já integrou o Claude Code, Cursor ou Codex no seu fluxo de trabalho, sabe que o jogo...

17 Ferramentas No-Code para Validar Seu Negócio

No mundo dos negócios, construir um Produto Mínimo Viável (MVP) não pode ser sinônimo de queimar o caixa da...

Extensões PostgreSQL: Substitua Redis, MongoDB e Kafka com SQL

Dominar as extensões PostgreSQL deixou de ser apenas uma opção para se tornar a principal estratégia de arquitetura em...
E-Zine Dev

Evolua para Sênior

Estratégias de Node.js, arquitetura Limpa e IA que nunca publicamos no blog. Junte-se a +10.000 devs.

Assinar Gratuitamente Zero spam. Cancele quando quiser.

State of AI 2026: A Maturidade da Inteligência Artificial

A inteligência artificial deixou definitivamente o território das experimentações e se consolidou como uma peça de infraestrutura fundamental no...

Construindo um Servidor MCP Personalizado com Node.js

Um guia prático para construir seu próprio servidor MCP para enriquecer as respostas de ferramentas de IA com contexto...

Mais Lidos

DevSecOps em Ação: Guia Prático para Desenvolvedores

Pesquisa da Progress revela os fatores que devem impulsionar...

Guia Prático de RabbitMQ no Node.js (usando amqplib)

Este artigo tem como objetivo o uso do sistema...

Livros sobre Inteligência Artificial com Node.js e JavaScript

Temos apresentado no site cursos de Inteligência Artificial, gratuitos...

Projetos de Código Aberto na Microsoft: O Guia Definitivo

Você conhece os projetos de código livre da Microsoft?...
E-Zine Dev

Evolua para Sênior

Estratégias de Node.js, arquitetura Limpa e IA que nunca publicamos no blog. Junte-se a +10.000 devs.

Assinar Gratuitamente Zero spam. Cancele quando quiser.

Recursos da Comunidade

Carreira Internacional

JOB NA GRINGA

Meta de Salário Remoto
U$ 5.000/mês

O mapa completo para programadores do Brasil conquistarem contratos internacionais e mudarem de vida financeira.

  • Vagas exclusivas semanais: Membros acessam vagas com 7 dias de antecedência.
  • Workshops e lives gravadas: Buscar vagas não é óbvio. Nós te mostraremos como.
  • 498 Portais de vagas: Que contratam Brasileiros direto na sua dashboard.
  • Mentorias com Recrutadores: Encontros semanais ao vivo com Erika Linares.
  • Inglês diário com foco em conversação: Treine para entrevistas num ambiente sem julgamentos.
  • Suporte pós-contratação: Contabilidade e recebimento legal com a menor taxa.
Garantir Minha Vaga

Inscrição segura via Hotmart

Você vai gostarrelacionados
Continue aprendendo

E-Zine Dev Ramos

Quer dominar arquitetura e IA?

Junte-se a +10.000 profissionais. Receba semanalmente estratégias de Node.js, React e IA que nunca publicamos no blog.

Assinar Gratuitamente Zero spam. Cancele quando quiser.