Java é uma linguagem de programação orientada a objetos amplamente utilizada e uma plataforma de software. Ele é executado em bilhões de dispositivos, incluindo notebooks, dispositivos móveis, consoles de jogos e muitos outros.

Ter tais capacidades tem um preço. Java pode ser difícil de aprender, com uma sintaxe longa e complicada. É digitado estaticamente, o que pode ser menos conveniente. E embora seja independente de plataforma, a ascensão da plataforma de computação em nuvem torna a independência menos vantajosa.

Estas são apenas algumas das razões pelas quais o Java pode estar caindo em desuso.

1. Java está se tornando menos popular

Em primeiro lugar, Java parece estar caindo lentamente em popularidade. Durante anos, foi uma das melhores linguagens de programação para aprender, mas agora não é mais uma tendência. Isso significa que, com o tempo, os desenvolvedores escreverão cada vez menos novos aplicativos em Java.

Essa tendência implica que o Java acabará desaparecendo. As empresas em todo o mundo continuarão a contratar programadores Java para manter as bases de código legadas, mas isso não durará para sempre.

Ainda assim, se você deseja focar sua carreira na construção de coisas novas, em vez de manter os programas existentes, o Java pode não ser a melhor escolha para você.

Linguagem de programação maio de 2022
Pitão 1
C 2
JavaSciptGenericName 3
C++ 4
C # 5
Visual básico 6
Java 7
Linguagem Assembly 8
SQL 9
PHP 10

2. Java não é simples

Java pode ser fácil de aprender, mas não é simples. A linguagem é fácil de aprender porque o código Java é simples de escrever, organizar e compilar. Mas não é simples porque o código escrito em Java tende a ser mais prolixo e mais tedioso de escrever.

Você também precisa compilá-lo, o que torna o Java muito menos conveniente do que linguagens como o Python. Então, se você é um novato aprendendo a programar pela primeira vez, Java não é uma boa linguagem para começar.

Se você é um profissional que deseja criar um código simples e elegante e implantá-lo rapidamente, o Java também não é a escolha ideal.

3. Getters e Setters

Getters e setters são quase uma parte obrigatória do uso de uma linguagem e muitos frameworks encorajam seu uso. No entanto, os getters e setters de Java podem ser desnecessariamente detalhados.

Gerenciar código decorado com getters e setters Java é um inferno e complicado. A falta de uma solução significativa para o problema de getters e setters é apenas a ponta do iceberg.

públicoaulaVeículo{
privado Corda cor;

// Recuperador
público Corda getColor(){
retornar cor;
}

// Normatizador
públicovaziodefinirCor(Sequência c){
esse.cor = c;
}
}

4. Sem glacê sintático

Você está operando em uma coleção. Você quer o primeiro item. O que você está fazendo? Claro, você chama o método em vez de usar o método comum [] operador. Tudo porque você não pode sobrecarregar os operadores.

Para praticamente todas as operações, você deve usar um nome de método prolixo, mesmo que um operador de um único caractere sirva.

Java suporta o conceito; a linguagem permite concatenar strings com o + operador, por exemplo. Simplesmente não permite que você, o programador, faça o mesmo.

5. Declarando as exceções que um método pode lançar

Java exige que você declare as exceções que um método pode lançar. Parece útil, não é? Ao usar um determinado método, você sabe o que esperar.

O problema é que o código é um organismo vivo e acontece que o método que você está usando começa a lançar mais exceções. O que acontecerá então? Bem, seu código parou de compilar.

Você deve lidar com a situação ou adicionar uma exceção à lista de lances. Vamos supor que a API que você está usando não mude. Existe algo como RuntimeException em Java. Se o seu método pode lançar esta exceção ou um de seus descendentes, você precisa declará-lo.

As exceções do Java podem trazer muitos problemas de manutenção de código.

// Programa Java que demonstra o uso de throw
aulaThrowExcep
{
estáticovazio diversão()
{
tentar
{
lançarnovo NullPointerException("demonstração");
}
pegar (NullPointerException e)
{
System.out.println("Pego dentro da diversão ().");
lançar e; // lançando novamente a exceção
}
}

público estáticovazio principal(Corda argumentos[])
{
tentar
{
diversão();
}
pegar (NullPointerException e)
{
System.out.println("Preso no principal.");
}
}
}

6. IDEs complicados

Os programadores Java costumam usar um IDE como Eclipse ou IntelliJ. Esses IDEs são poderosos, mas complexos de interagir, especialmente para um desenvolvedor iniciante ou intermediário. Você precisará se esforçar muito para aprender seu IDE por dentro e por fora para que ele seja mais produtivo e menos doloroso para você.

7. A independência da plataforma é menos importante em 2022

O fato de que Java é muito independente de plataforma sem dúvida importa menos hoje do que há 10 ou 20 anos.

A razão é que vivemos em um mundo definido por software. Hoje, máquinas virtuais, contêineres e serviços em nuvem facilitam a execução de um aplicativo onde você quiser, sem se preocupar com o ambiente subjacente.

Em outras palavras, você não precisa alterar seu código para fazer seu aplicativo funcionar onde você precisa. Em vez disso, você pode alterar o ambiente de hospedagem.

Isso não quer dizer que a portabilidade do aplicativo não seja mais importante. Não é tão crítico quanto costumava ser, e isso torna o Java um pouco menos importante por extensão.

8. Digitação Estática

Java executa a verificação de tipo durante o tempo de compilação. Isso significa que você deve declarar o tipo de cada variável em tempo de compilação. É o mesmo com linguagens como C e C++, mas outras linguagens, como Scala e Haskell, oferecem alguma forma de inferência de tipo.

Com a tipagem estática, as variáveis ​​geralmente não têm permissão para alterar os tipos. Isso torna a sintaxe Java um pouco complicada, especialmente ao escrever código para um grande projeto.

Muitos programadores preferem programaçao dinamica onde a verificação de tipo ocorre em tempo de execução. Isso significa que o tipo de uma variável pode mudar ao longo de seu tempo de vida.

Aprenda novas linguagens de programação

Não é que Java não sirva para nada, mas sua sintaxe é desajeitada e não favorece a leitura do código. O gerenciamento de dependências do Java permite abuso e leva a bugs difíceis de detectar.

A tecnologia continua mudando e, como desenvolvedor, é sempre útil estar atualizado com as linguagens de programação emergentes. O que está na moda hoje pode em breve ser a notícia de ontem.