O mito do "Java é Difícil" e as melhorias da linguagem
Paulo Gabriel
Posted on November 25, 2022
O mito
Uma das coisas que eu mais vejo na internet e faculdade são falas como "Deus me livre de usar Java", "Java é muito difícil" e "Java é muito verboso" "Precisei comprar um computador de R$ 10.000,00 para poder usar Java", ta eu não trouxe muitos exemplos, aposto que você também viu algo parecido.
O grande problema é que muitas pessoas, na verdade, não entendem o paradigma de Orientação a Objetos e culpam a linguagem em si, a linguagem nunca é a culpada por algo. Ela é só uma ferramenta, o grande ponto é o telefone sem fio que vai espalhando a "noticia" de que o problema está na linguagem, muitas pessoas sequer programaram em Java.
Uma coisa que essas pessoas podem fazer é entender melhor o que é a Orientação a Objetos, que problemas ela resolve, tentar outra linguagem como C#, Ruby, ou qualquer outra que tenha esse paradigma, a pessoa entendendo o paradigma a linguagem vai ser o menor dos problemas.
Um grande ponto é que não precisamos mais escrever Java como era escrito antigamente, temos frameworks que abstraem muitas coisas, como o Spring, com Spring conseguimos fazer um CRUD com poucas linhas de código, se usar Rest Repositories e JPA viish, em 10 minutos sai um CRUD, com tudo que é método e ainda implementando HATEOAS, paginação e tudo mais.
A realidade é que as pessoas precisam perder o medo da linguagem e entender que ela é apenas uma ferramenta.
As melhorias
A verbosidade da linguagem vem diminuindo com o tempo, por exemplo, no Java 17 (ultima LTS) temos os records, uma feature bem interessante para dados que são imutáveis, não precisamos criar aqueles famosos POJOS.
public record Person(String name, String email, String address) {}
Desse modo temos um tipo de classe, mais compacto, com atributos imutáveis e métodos get
para eles.
Agora também temos "switch expressions" que são blocos "switch" que podem também retornar algo, temos um modo melhor também para dar o "match" em um valor.
public int foo(int input) {
return switch(input) {
case 1, 3, 5, 7 -> input * 2;
case 2, 4, 6, 8 -> input * 3;
default -> input;
}
}
Em versões anteriores também temos o for
abstraindo iterators, temos a Stream API, conseguimos usar recursos de linguagens funcionais em Java também.
Posted on November 25, 2022
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.