ti-enxame.com

Java ainda será relevante em 5 anos?

Java terá a mesma importância que tinha no passado, ou será menos relevante do que hoje em dia?

40
kiamlaluno

Java é relevante e continuará sendo relevante por muitos anos no mundo da computação corporativa.

Se continua a ser relevante em outras áreas, depende muito do que a Oracle faz. Se eles injetarem alguma vida (e recursos) no ME, aplicativos de desktop e outras áreas, e se continuarem com a evolução da Java, então Java = fará bem.

Porém, se a Oracle reduzir a pesquisa e o desenvolvimento e/ou tentar atrapalhar outros players no espaço Java, há uma boa chance de que alguém/alguma empresa desenvolva um melhor (e mais aberto) tipo Java) Se a Oracle vencer sua ação contra o Google, prevejo que a próxima geração da plataforma Android terá um novo idioma, como aconteceu com o C #. Se o Google acertar a abertura ... então, o jogo começou!

30
Stephen C

Sim, Java certamente continuará sendo relevante e provavelmente manterá sua posição como a principal plataforma geral para desenvolvimento de software por um longo tempo.

Primeiro, as razões pelas quais Java é e continuará sendo uma forte escolha:

  • Java ainda é o idioma mais popular - e isso significa que possui o maior número de desenvolvedores, o desenvolvimento mais contínuo, a maior base instalada etc. Não há sinal de declínio acentuado - se você observar a tendência da TIOBE, por exemplo, ela poderá continuar sendo a número 1 nos próximos 10 a 15 anos.

  • O Java, apesar de suas falhas, ainda é uma excelente linguagem para o desenvolvimento de aplicativos corporativos . O fato de ser detalhado e tende a promover um estilo bastante padronizado de desenvolvimento OOP é uma coisa boa quando os aplicativos precisam ser mantidos por muitos desenvolvedores diferentes ao longo de muitos anos de uma maneira bastante padronizada. Os CIOs inteligentes percebem isso, e é por isso que você não verá Java desaparecendo na empresa tão cedo. Aliás, e o objetivo explícito de Java quando foi criado era que deveria ser "simples, orientado a objetos e familiar".

  • O sucesso dos idiomas não se refere apenas ao idioma em si, mas ao ecossistema de bibliotecas disponível para o idioma. Nesse aspecto, Java é inigualável, com uma enorme variedade de bibliotecas comerciais e de código aberto.

  • Desempenho - O código compilado JIT nas JVMs modernas é executado muito perto do código nativo otimizado em termos de velocidade. Na prática, isso significa que Java é normalmente uma das combinações de linguagem/implementação mais rápidas disponíveis (consulte benchmarks falhos se desejar). Quem pensa que Java é lento (ou, pelo amor de Deus, "interpretado") precisa atualizar seus fatos a partir do século passado.

  • Principal apoio corporativo - Java é uma plataforma estratégica suportada por muitas das maiores e mais importantes empresas e organizações de tecnologia do mundo - estamos falando sobre Google, Oracle, IBM, Apache Software Federation etc. Java também contam com suporte substancial dos principais usuários de tecnologia - bancos, empresas de mídia etc. Nenhum outro idioma/plataforma possui amplo suporte da indústria (mesmo que os players tenham o brigas ocasionais :-))

  • Android - está dando um grande impulso a Java no espaço móvel. Muitas startups têm como alvo isso, e não é razoável esperar que as startups móveis também tenham boas razões para escolher Java no lado do servidor.

  • Portabilidade : Java é a coisa mais próxima da existência de um ambiente de programação genuíno entre plataformas. Está em tudo, desde servidores de ponta até smartphones, e o código puro Java compilado será executado sem modificação em todas essas plataformas. Muito poucos idiomas podem dizer isso com o mesmo grau de credibilidade. Também como uma linguagem de bytecode, Java tem uma vantagem inerente no espaço da biblioteca, porque as bibliotecas compiladas são inerentemente portáveis ​​entre plataformas.

  • Excelentes ferramentas - a maioria das quais são gratuitas e/ou de código aberto. Netbeans e Eclipse são ótimos exemplos no espaço IDE. Os desenvolvedores precisam de boas ferramentas para serem totalmente produtivos, portanto esse é um fator importante na escolha do idioma/plataforma.

  • Java é Open Source - não vamos explicar por que isso é uma coisa boa aqui, mas basta dizer que: a) a implementação principal Java no OpenJDK eb) a maioria dos as interessantes bibliotecas e ferramentas Java são de código aberto.

  • Java é não apenas uma linguagem, é uma plataforma : existem muitas linguagens promissoras na JVM como Clojure e Scala que representam o futuro da plataforma na frente do idioma. Minha previsão seria que a linguagem Java continue recebendo pequenas melhorias nos recursos (JDK 7, 8 etc.), enquanto essas novas linguagens da JVM são onde a inovação de ponta acontecerá. Mas tudo faz parte da plataforma Java.

Em segundo lugar, como Java será substituído? Vejamos os concorrentes alternativos:

  • C/C++ - continuará sendo importante em termos de programação de sistemas e para requisitos de código nativo altamente otimizados, como jogos. Mas isso continuará sendo um nicho especializado e nunca os levará além do Java, o que é mais adequado para o desenvolvimento de aplicativos de uso geral.
  • Microsoft.NET - C # é uma linguagem agradável, com certeza (um clone aprimorado/polido de Java, em essência), mas toda a plataforma .NET representa o aprisionamento do fornecedor na pilha de software da Microsoft. Um grande número de pessoas nunca adotará uma estratégia específica do fornecedor, tendo sido queimada por isso no passado. O Mono, apesar de ser um projeto de código aberto de Nice, nunca será totalmente compatível, portanto a maioria das empresas não apostará nisso como uma opção. O .NET/C # continuará sendo muito importante no espaço do Windows, mas não poderá substituir o Java no geral.
  • Objective-C - sem dúvida continuará a ocupar um grande nicho no desenvolvimento específico da Apple, mas provavelmente não terá muita tração fora desse espaço. Além disso, Java tem uma contra-história muito atraente no espaço móvel, graças ao Android
  • Python, Ruby - Linguagens agradáveis ​​novamente, muito produtivas em seus nichos. Mas nem de longe a JVM em termos de desempenho, aceitação do setor ou variedade de bibliotecas. Continuará a ter sucesso, com certeza, mas eles não estão se moldando para ser assassinos de Java.
  • JavaScript - continuará tendo um papel importante no desenvolvimento da Web do lado do cliente. Mas não há força real fora desse espaço que provavelmente ameaçará Java em breve.
  • Haskell, OCaml (e várias outras linguagens acadêmicas/FP) - ótimas linguagens, mas não têm nem perto do suporte da biblioteca Java, portanto, não é particularmente prático para o uso no mundo real. Além disso, não ofereça vantagens convincentes sobre linguagens da JVM, como Clojure ou Scala (que pode use as bibliotecas Java sem dor)
  • Clojure ou Scala - realmente realmente atraente a médio/longo prazo. Na verdade, pode substituir Java em 10 a 15 anos, mas ambos contam como parte da plataforma Java de qualquer maneira, já que são idiomas da JVM. Portanto, Java os investimentos estarão seguros.
  • Novo idioma misterioso e desconhecido? - pode acontecer, mas a história mostrou que, por mais atraente que seja uma linguagem, leva muito tempo para que a tração se desenvolva, os desenvolvedores aprendam novas habilidades, investimentos significativos por parte das empresas etc.

Finalmente, algumas conclusões/previsões:

  • As posições relativas gerais (em termos de participação de mercado) dos principais idiomas evoluirão um pouco nos próximos anos, mas não mudarão muito. Java permanecerá no 1.

  • Você não errará ao escolher a plataforma Java nos próximos 10 a 15 anos. Não se preocupe em Java desaparecer tão cedo.

  • No curto prazo, o Java-the-language é uma aposta segura e confiável. A longo prazo, ou se você sentir a necessidade de estar mais na vanguarda do design de inovação/idioma, recomendo o Clojure ou Scala como novos idiomas da JVM

  • As pessoas continuarão divulgando o FUD sobre Java. Ignore isso.

47
mikera

Eu diria que está em declínio. Não se foi, mas já passou do seu auge.

17
Fishtoaster

Mesmo no pior (melhor?) Caso, não consigo imaginar Java se tornando irrelevante dentro de 5 anos). Java foi usado o suficiente para ser aproximadamente no mesma situação que COBOL, Fortran etc. - mesmo que todos com código existente decidissem reescrever todos os sistemas existentes em outro idioma o mais rápido possível, levaria mais de 5 anos para substituir tudo (e daqui a 5 anos, ainda restaria o suficiente em uso ativo para que uma boa quantidade de manutenção ainda estivesse acontecendo).

Realisticamente, é improvável que isso aconteça - embora haja opiniões divergentes da Oracle, não posso imaginá-las fazendo algo tão obviamente horrível que todos os principais players que têm grandes investimentos em Java caiam Com toda a honestidade, provavelmente levaria quase 5 anos de decisões obviamente ruins antes que a IBM (por exemplo) considerasse trabalhar para usar outra coisa no lugar de Java. Eles têm um investimento grande o suficiente em Java é improvável que o deixem cair até ou a menos que acreditem que não têm praticamente nenhuma alternativa.

17
Jerry Coffin

Duas respostas:

1) Android

2) Blackberry

Sério, no desktop, pode estar em declínio, mas alimenta os dois concorrentes no iPhone.

Além disso, no ano passado, ajudei um monte de pessoas com Java dever de casa na escola. A propósito, Java ainda é ensinado em faculdades.

Editar:

Em outubro de 2011, o BlackBerry parece estar em declínio. Android ainda está forte.

17
Moshe

Ele estava perdendo importância no mercado móvel, mas com o Android recuperou novamente.

14
Casebash

Java será relevante no futuro próximo, mesmo se você definir relevante para incluir apenas novo código, não o modo de manutenção herdado. Sim, a linguagem é péssima e trata seus programadores como crianças malcriadas, em vez de consentir adultos e não tem um facelift desde a Idade da Pedra. Por outro lado:

  1. Java tem algumas bibliotecas impressionantes.

  2. A JVM é uma plataforma incrível.

  3. Você não precisa programar em Java para usar essas bibliotecas, agora que houve uma proliferação de linguagens JVM.

IMHO, a maneira como as coisas evoluirão é que Java no mundo JVM se tornará o que C é no mundo compilado nativamente. As pessoas usarão Scala, Jython, Groovy etc. na codificação do dia a dia, mas continuará chamando o código antigo, crufty Java dessas linguagens por toda a eternidade. Certos códigos críticos de desempenho ainda podem ser escritos em Java, porque é provavelmente a linguagem JVM de nível mais baixo e mais eficiente. as bibliotecas precisarão de novos recursos adicionados.Portanto, Java permanecerá altamente relevante, mesmo que não seja usado pelo programador médio no dia a dia).

13
dsimcha

Acho que sim. Prevejo que sua popularidade aumentará nos próximos anos, com melhorias recentes no plug-in e melhorias sintáticas chegando Java 7. E tem a vantagem da enorme variedade de boas bibliotecas de código aberto (em comparação com o .NET) que poderiam mantê-lo vivo por mais 10 anos.

7
finnw

Atualmente, o Qt está matando Java em aplicativos de área de trabalho. Há muitos reescritos de Java para Qt. Atualmente, estou trabalhando em um deles. Desde o dia em que Quando iniciei minha carreira de programação, sempre existe um boato de que Algo mataria C++. Por exemplo: Visual Basic, Java, C #, mas na realidade C++ ainda está em andamento. Tem muitas desvantagens, mas continua. Todos os outros concorrentes tiveram uma morte triste. ........

5
Tamilselvan R

Java a linguagem pode estar em lento declínio, mas Java a plataforma (JVM + JDK) definitivamente cresceu durante os últimos dois anos (Scala, Clojure e muitos outros idiomas; Android framework). É facilmente a melhor (somente viável?) Plataforma de multi-arquitetura, multi-SO e vários idiomas existente no mercado, escalando desde dispositivos móveis incorporados até empresas de mainframe, e atualmente não há concorrentes comparáveis ​​no AFAIK. Então, eu esperaria Java que a plataforma seja relevante em 5 anos e até em 15 anos. Isso também torna Java o idioma relevante a longo prazo, mesmo que sua popularidade possa ultrapassar o pico.

4
Joonas Pulakka

Eu não acho que perderá relevância. Java 7 acaba de ser lançado com muitos recursos interessantes que ajudarão os desenvolvedores a criar ótimos softwares com mais facilidade.

Também Java é usado para criar aplicativos Blackberry; um dos principais celulares corporativos. É seguro dizer que não chegará a lugar nenhum tão cedo.

4
Sergio

O TIOBE classifica o uso do idioma ... http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

Com base em suas estatísticas, [Java lidera o caminho e provavelmente o fará por muito tempo - nº 1 desde 2005. Eu usei Java na minha carreira e em todos os lugares em que trabalhei tinha Java aplicativos/desenvolvedores - mesmo em lugares que se consideravam Microsoft Dev Shops. Java é uma linguagem tão fácil de entender quando você precisa desenvolver soluções em um servidor Mac ou Linux.

Além disso, o bom e velho C/C++ ainda se mantém forte em # 2 e # 3 - enquanto C # - a linguagem que todo mundo pensa que é a mais popular (melhor marketing de MS) - nem chega perto! Eu uso o C # agora, mas levará anos para igualar a quantidade de código que escrevi em Java e Delphi.

Portanto, não tenha medo de aprender ou usar Java - sempre há trabalhos publicados para eles. Portanto, sim Java será muito relevante por muito tempo.

4
MDV2000

Sou um desenvolvedor .NET primário, embora trabalhe com outras linguagens (incluindo Java), conforme necessário, para obter a tarefa em mãos. Como tal, com base na minha própria experiência de trabalho com o idioma, acho que ele não desaparecerá tão cedo, eis o porquê:

  1. Base de instalação atual - Existem programas suficientes por aí que precisam de suporte a longo prazo e há uma razão para os novos desenvolvedores aprenderem o idioma.
  2. so no cenário acadêmico - A maioria das faculdades e universidades está usando como uma de suas línguas introdutórias para ensinar OOP e outros conceitos fundamentais, isso significa que continuará havendo novos desenvolvedores se formando e ingressando na força de trabalho que estarão familiarizados com o idioma quando começarem.
  3. É uma natureza multiplataforma - Uma óbvia, mas o fato de ser multiplataforma é muito importante, ainda mais como telefones inteligentes com suporte para Java A perspectiva de ter que manter apenas uma base de código, mas ser capaz de implantar (ou seja, vender) aplicativos para várias plataformas, será um pouco difícil.Você pode imaginar se o iOS e o Droid suportam aplicativos escritos em Java?
  4. Nenhum concorrente forte - Neste momento, não posso nomear uma linguagem que considero um forte concorrente para Java. Claro que o C # está começando a aparecer em mais plataformas graças ao Mono, mas isso não é o mesmo que ter a mesma plataforma cruzada que Java possui. Concedido que existem várias linguagens que fazem o que = Java funciona (e alguns casos melhor)) eles tendem a ser adaptados ao que estão fazendo e, para alguns projetos grandes, não faz sentido ter uma tonelada de idiomas para manter, se você pode aceitar qualquer resultado de desempenho que Java possa ter.
4
rjzii

IMHO, Java permanecerá muito relevante e crescerá em uso, mesmo que não esteja realmente evoluindo em suas construções ou poderes).

Aqui está o meu raciocínio: - Há muito código por aí, e a manutenção requer mais pessoas do que escrever um novo código.

  • O campo "As linguagens da VM estão muito lentas" está perdendo lentamente (especialmente porque Java foi bem-sucedido na negociação de algo).

  • As principais empresas ainda o usam em todos os setores, incluindo Oracle.

  • A plataforma Android está crescendo mais rápido que o iOS, sem nenhum outro concorrente à vista) e isso atrai mais pessoas para o idioma.

  • É mais simples de usar do que as linguagens funcionais. É fácil para os puristas e acadêmicos de idiomas apreciarem as linguagens funcionais e suas capacidades, mas a maioria dos iniciantes sem diploma em ciências da computação não aprecia totalmente o poder do Lambda. Então, eu não acho que essas línguas decolariam.

  • É totalmente gratuito (ao contrário do .NET, que ainda está mais próximo do ecossistema do Windows, apesar das alternativas).

3
Uri

Não tenho certeza sobre Java. Mas certamente a JVM continuará sendo relevante, suportando muitos outros idiomas.

3
Gulshan

É um dos maiores nomes da programação corporativa (J2EE). Tenho certeza de que não vamos ver isso decair nos próximos anos.

3
Terence Ponce

Depende de como a linguagem evoluirá.

No estado atual Java não é muito atraente como linguagem. Nasceu para suportar um (e apenas um) paradigma: OOP.Ele se coloca em algum lugar no meio do caminho entre linguagens que permitem abstrações de nível superior (como C++ e seus recursos de metaprogramação) e linguagens de script com recursos de reflexão (como os comandos Python "exec" e "dir"), mas de alguma forma ele falha em encontrar seu lugar real. Está basicamente se tornando obsoleto como "linguagem" ". Não fosse o fato de ser um padrão de fato em dispositivos móveis, acho que já estaria morto agora.

Quanto ao fato de ser uma boa linguagem de ensino para OOP, tenho minhas dúvidas pelo que posso ver: todos os programadores nascidos em Java apenas geram padrões de Visitante e Observador em todos os lugares, mas não é que eu tenha um ótimo experiência com Java.

Ainda há muito código legado e, em dispositivos móveis, é um padrão. Dito isto, eu nunca escolheria Java para um desktop ou aplicativo da Web. Não há motivos para isso, além dos negócios (a maioria dos gerentes concorda com a cabeça se você disser "Java"), ou seja, eu suponha, a razão de ser um padrão em dispositivos móveis).

3
Emiliano

O Java não perde completamente sua relevância por muitos anos, mas certamente está em declínio. Se desenvolvimentos recentes afetarão isso ou se a Oracle pode mudar, isso ainda precisa ser visto. Mas acho que um dia eu poderia ser como COBOL, sem novos projetos, mas também nunca morrendo.

2
indyK1ng

COBOL, Fortran e C ainda são relevantes. Qual é a chance de Java desaparecer em cinco anos? É possível que não haja muito novo Java em cinco anos, mas eu apostaria contra isso também, já que existem muitas pessoas que usam Java e lojas são muito lentas para mudar seus idiomas preferidos.

2
David Thornley

Houve algumas tendências no mundo Java - particularmente a adoção absolutamente brilhante de JRuby e Rails ou Groovy e Grails - que indicam que Java ainda tem muita vida nela. Depois, há a situação Android, que também está a favor de Java. Tão recentemente quanto o Snow Leopard no Mac, certas mudanças - agora suportando o Midi sem drivers externos - permitem que ele também ganhe possibilidades na área de trabalho. E os aplicativos Swing finalmente parecem 99% nativos (ou pelo menos há muitos casos malucos que acreditam nisso agora: há 10 anos, não havia nenhum).

O Java teve um momento incrível nos anos 90, onde parecia ser a solução para tudo. Agora está claro que nada é a solução para tudo. .Net está arrasando, Ruby, Python e PHP (com soluções CMS bobas e estruturas inteiras com as quais as pessoas se casam para sempre!) E Java (com Groovy JRuby JPython seja qual for) e muito mais. A resposta é:

Espere um universo pluralista

Java continuará a desempenhar um papel importante neste universo? Se você quer dizer "idiomas executados na JVM", a resposta é definitivamente definitiva. Se a resposta for apenas Java (idioma, JVM etc.), a resposta será "talvez não seja tão importante". Mas vamos lá, mesmo Cobol ainda está pendurado.

1
Dan Rosenstark

Eu acho que os acadêmicos ainda precisam do valor do código aberto em Java. Existem muitas e poderosas bibliotecas (focadas em propósitos acadêmicos) desenvolvidas em Java.

Concordo que Java permanecerá relevante, mas para segmentos menores.

1
VinkyH

O Google escreve muito em Java e o Google é a maior empresa da Web. Acho que a Web é o futuro - aplicativo Web, computação em nuvem - e, portanto, acho que Java ainda é relevante no futuro.

E há o Android, que é o futuro dos telefones inteligentes na minha opinião. E algumas pessoas dizem que os smartphones são o futuro do computador - o que não é a minha opinião :) -, mas isso também deu um grande futuro para o Java). Então vá Java : D

1
SCBoy

Suspeito que todas as línguas acabem passando por uma fase em que os especialistas dirão "[Idioma] é o COBOL da [inserir década aqui]".

O Java se tornou uma ferramenta padrão, exclusiva ou uma das principais ferramentas, em várias áreas do desenvolvimento de software. Seu VM é popular como uma plataforma sobre a qual se constroem novos idiomas. Demorará muito tempo apenas com a sua inércia maciça, mesmo quando novos e melhores idiomas se tornarem populares).

1
DarenW

Aqui está um artigo da ReadWriteEnterprise sobre o declínio do Java:

http://www.readwriteweb.com/enterprise/2011/02/javas-not-dying-its-mutating.php

O que estamos testemunhando não é a morte do Java, mas sua transformação. Está deixando de ser apenas uma plataforma de uso geral que dominava a empresa e é o centro de muitas tecnologias diferentes para vários aplicativos especiais.

Ele também aborda como ferramentas específicas estão fornecendo alternativas à tecnologia Java, mas não necessariamente a substituindo:

Embora os bancos de dados NoSQL forneçam uma alternativa aos bancos de dados relacionais, isso não significa que os bancos de dados relacionais desaparecerão. Da mesma forma, o Node.js fornece uma alternativa especializada ao Apache, mas não mata o Apache.

0
Britt Wescott

Se estiver vinculado a algum setor (ou seja, bancário, plataformas móveis, etc.), é como perguntar "O Internet Explorer ainda será relevante em 5 anos .." 5 anos atrás. Hoje existem muitas empresas que possuem sites internos específicos do IE que não podem ser reescritos do zero. Portanto, não é "relevante", mas "inevitável".

Para chegar à sua pergunta - não, não é relevante como um força motriz para a inovação; mas sim, é relevante porque muitos setores exigem que os aplicativos Java sejam mantidos por muitos anos).

0
lorenzog