BT

Disseminando conhecimento e inovação em desenvolvimento de software corporativo.

Contribuir

Tópicos

Escolha a região

Início Notícias A retrocompatibilidade Java

A retrocompatibilidade Java

Após o anúncio da versão 7 do Java muito se comentou sobre a falta de features inovadoras e que provavelmente, por conta disso, o Java poderia ficar atrasado se comparado com outras linguagens. O excesso de retrocompatibilidade é apontada por muitos como um limitante crítico e um fator que pode levar a linguagem a uma estagnação precoce.

Em seu blog, Guilherme Silveira postou sobre os problemas que o Java poderia enfrentar por conta da compatibilidade excessiva, ele diz:

O que acontece se uma linguagem fica muito preocupada com a compatibilidade? Ela irá evoluir tão lentamente que outras linguagens terão a chance de superar ela. Esse é o perigo que a própria linguagem enfrenta. Java pode não perder sua posição porém cada vez mais veremos pessoas reclamando sobre as alterações que poderiam ser feitas na linguagem- mas não são.. por que preservar a compatibilidade tem sido o problema principal.

Um tópico no GUJ discutiu sobre a não inclusão de closures na nova versão, um fator apontado para a não implementação foi a retrocompatibilidade. Sobre a compatibilidade retroativa, nesse mesmo tópico, Luis Aguiar diz:

Não sei se o Java vai aguentar por muito tempo não quebrar essas compatibilidade, a linguagem já esta perdendo espaço para outras mais modernas, a ideia  de fazer "gambiarras" só pra poder manter a compatibilidade com coisas com mais de 10 anos não me agrada, sei lá, talves comercialmente seja bom, mas em termos de "uso" acho que Java esta se afundando, falo isso pelo crescimento acelerado em projetos Ruby/Python nos último anos, e não vejo nenhum movimento de mercado que isso vá diminuir.

Uma forma de resolver esse problema seria criar um fork para uma nova versão, esta não compatível com anteriores, onde seriam incluidas todas as novas funcionalidades sem se preocupar com versões antigas. Porém algumas pessoas discordam dizendo que a preocupação agora não é mais que a linguagem Java evolua e sim a plataforma, e que novas linguagens, sejam desenvolvidas para essa plataforma.

É evidente que a linguagem ainda tem um nome no mercado e que a nova versão irá agregar algumas funcionalidades, mais será que Java não poderia estar muito mais evoluída do que hoje? Quem sabe com isso uniriamos uma VM extremamente madura com uma linguagem evoluída o suficiente e com o nome no mercado.

E você leitor, acha que a retrocompatibilidade está atrapalhando a evolução da linguagem? E o que poderia ser feito para resolver esse problema? Um fork dá linguagem seria uma boa solução?

Avalie esse artigo

Relevância
Estilo/Redação

Conteúdo educacional

BT