it-swarm-es.com

¿Será Java todavía relevante en 5 años?

¿Tendrá Java) la misma importancia que tuvo en el pasado, o será menos relevante que en la actualidad?

40
kiamlaluno

Java es relevante y seguirá siéndolo durante muchos años en el mundo de la informática empresarial.

Si continúa siendo relevante en otras áreas depende mucho de lo que haga Oracle. Si inyectan algo de vida (y recursos) en ME, aplicaciones de escritorio y otras áreas, y continúan con la evolución del lenguaje Java, entonces Java = lo hará bien.

Pero si Oracle reduce la I + D y/o trata de pisotear a otros jugadores en el espacio Java), hay una buena posibilidad de que alguien/alguna compañía desarrolle un Java mejor (y más abierto) lenguaje. Si Oracle gana su demanda contra Google, predigo que la próxima generación de la plataforma Android) tendrá un nuevo idioma, tal como sucedió con C #. Si Google tiene la apertura correcta ... entonces, el juego está en marcha!

30
Stephen C

Sí, Java ciertamente continuará siendo relevante y probablemente mantendrá su posición como la plataforma general n. ° 1 para el desarrollo de software durante mucho tiempo.

En primer lugar, las razones por las que Java es y seguirá siendo una buena opción:

  • Java sigue siendo el idioma más popular - y esto significa que tiene la mayoría de los desarrolladores, el desarrollo más continuo, la base instalada más grande, etc. No hay signos de una fuerte disminución: si observa la tendencia TIOBE, por ejemplo, fácilmente podría continuar siendo el número 1 durante los próximos 10 a 15 años.

  • Java, a pesar de sus defectos, sigue siendo un lenguaje excelente para desarrollar aplicaciones empresariales . El hecho de que sea detallado y tiende a promover un estilo bastante estandarizado de OOP desarrollo es algo bueno cuando las aplicaciones necesitan ser mantenidos por muchos desarrolladores diferentes durante muchos años de una manera bastante estandarizada. Los CIO inteligentes se dan cuenta de esto, por lo que no verán Java desaparecer en la empresa en el corto plazo. Por cierto, y el objetivo explícito de Java cuando se creó fue que debería ser "simple, orientado a objetos y familiar".

  • El éxito de los idiomas no se trata solo del lenguaje en sí, sino también del ecosistema de las bibliotecas disponibles para el idioma. A este respecto, Java es insuperable, con una gran variedad de bibliotecas comerciales y de código abierto.

  • Rendimiento - El código compilado JIT en JVM modernas se ejecuta muy cerca del código nativo optimizado en términos de velocidad. En la práctica, esto significa que Java es típicamente una de las combinaciones de lenguaje/implementación más rápidas disponibles (vea puntos de referencia defectuosos si lo desea). Cualquiera que piense que Java es lento (o, por amor de Dios, "interpretado") necesita actualizar sus hechos del siglo pasado.

  • Apoyo corporativo importante - Java es una plataforma estratégica respaldada por muchas de las empresas y organizaciones tecnológicas más grandes e importantes del mundo - estamos hablando de Google, Oracle, IBM, la Federación de software de Apache, etc. Java también tiene un soporte sustancial de los principales usuarios de tecnología: bancos, compañías de medios, etc. Ningún otro idioma/plataforma tiene tal amplio soporte de la industria (incluso si los jugadores tienen tiffs ocasionales :-))

  • Android - está dando un gran impulso a Java en el espacio móvil. Muchas startups están apuntando a esto, y es No es irrazonable esperar que las startups móviles también tengan una buena razón para elegir Java también en el lado del servidor.

  • Portabilidad : Java es lo más parecido que existe a un entorno de programación multiplataforma genuino. Está en todo, desde lo alto servidores finales para teléfonos inteligentes, y compilado puro Java código se ejecutará sin modificaciones en todas estas plataformas. Muy pocos idiomas pueden decir esto con el mismo grado de credibilidad. También como lenguaje de código de bytes, Java tiene una ventaja inherente en el espacio de la biblioteca porque las bibliotecas compiladas son inherentemente portátiles en todas las plataformas.

  • Excelentes herramientas - la mayoría de las cuales son gratuitas y/o de código abierto. Netbeans y Eclipse son excelentes ejemplos en el espacio IDE. Los desarrolladores necesitan buenas herramientas para ser completamente productivos, por lo que este es un factor importante en Elección de idioma/plataforma.

  • Java es Open Source - no va a entrar en por qué esto es algo bueno aquí, pero es suficiente decir que ambos a) el núcleo Java implementación en OpenJDK y b) la mayoría de las interesantes bibliotecas y herramientas Java) son de código abierto.

  • Java es no solo un lenguaje, es una plataforma : hay muchos lenguajes prometedores en la JVM como Clojure y Scala que representan el futuro de la plataforma en el frente del lenguaje. Mi predicción sería que el Java continúa recibiendo mejoras menores en las características (JDK 7, 8, etc.) mientras que estos nuevos lenguajes JVM son donde sucederá la innovación de vanguardia. Pero es todo parte de la plataforma Java.

En segundo lugar, ¿cómo se reemplazará Java?) Veamos los contendientes alternativos:

  • C/C++: seguirá siendo importante en términos de programación de sistemas y para requisitos de código nativo altamente optimizados, como los juegos. Pero eso seguirá siendo un nicho especializado y nunca los llevará más allá de Java, que es más adecuado para el desarrollo de aplicaciones de propósito general.
  • Microsoft.NET - C # es un buen lenguaje seguro (un clon mejorado/pulido de Java, en esencia), pero toda la plataforma .NET representa el bloqueo del proveedor a la pila de software de Microsoft. Un gran número de personas nunca adoptará una estrategia específica del proveedor que haya sido quemada por esto en el pasado. Mono, a pesar de ser un proyecto de código abierto de Niza, nunca será totalmente compatible, por lo que la mayoría de las empresas no apostarán por esto como una opción. .NET/C # continuará siendo muy importante en el espacio de Windows, pero no podrá desplazar Java en general.
  • Objective-C: sin duda seguirá ocupando un nicho importante en el desarrollo específico de Apple, pero probablemente no tendrá mucha tracción fuera de ese espacio. Además, Java tiene una contra-historia muy convincente en el espacio móvil gracias a Android
  • Python, Ruby - Buenos idiomas nuevamente, muy productivos en sus nichos. Pero no se acerca a la JVM en términos de rendimiento, aceptación de la industria o gama de bibliotecas. Seguramente continuarán siendo exitosos, pero no se perfilan para ser asesinos de Java.
  • JavaScript: continuará teniendo un papel importante en el desarrollo web del lado del cliente. Pero no hay fuerza real fuera de ese espacio que pueda amenazar Java en cualquier momento pronto.
  • Haskell, OCaml (y varios otros idiomas académicos/FP): excelentes lenguajes, pero no tienen soporte para la biblioteca Java tiene, por lo que no es particularmente práctico para el uso en el mundo real. Además, no ofrezca nada convincente ventajas sobre los lenguajes JVM como Clojure o Scala (which can use Java bibliotecas sin dolor)
  • Clojure o Scala - realmente realmente convincente a mediano/largo plazo. Podría reemplazar Java en 10-15 años, pero ambos realmente cuentan como parte de la Java plataforma de todos modos ya que son lenguajes JVM. Entonces Java las inversiones serán seguras.
  • Misterioso nuevo idioma desconocido? - puede suceder, pero la historia ha demostrado que no importa cuán convincente sea un lenguaje, la tracción tarda mucho en desarrollarse, los desarrolladores aprenden nuevas habilidades, se realizan inversiones significativas por parte de las empresas, etc.

Finalmente, algunas conclusiones/predicciones:

  • Las posiciones relativas generales (en términos de participación de mercado) de los principales idiomas evolucionarán un poco en los próximos años, pero no cambiarán mucho. Java permanecerá No.1.

  • No te equivocarás al elegir la plataforma Java para los próximos 10-15 años. No te preocupes por que Java desaparecerá pronto).

  • En el corto plazo, Java-the-language es una apuesta segura y confiable. A largo plazo, o si siente la necesidad de estar más a la vanguardia de la innovación/diseño del lenguaje, recomendaría Clojure o Scala como nuevos lenguajes JVM

  • La gente continuará difundiendo FUD sobre Java. Simplemente ignóralo.

47
mikera

Yo diría que está en declive. No se ha ido, pero ha pasado su apogeo.

17
Fishtoaster

Incluso en el peor de los casos (¿el mejor?), No puedo imaginar que Java se vuelva irrelevante dentro de 5 años. Java se ha utilizado lo suficiente como para que sea más o menos) la misma situación que COBOL, Fortran, etc., incluso si todos los que tienen el código existente decidieran reescribir todos los sistemas existentes en otro idioma tan rápido como sea razonable, llevaría más de 5 años reemplazarlo todo (y 5 años a partir de ahora, aún quedaría suficiente en uso activo para que todavía se realizara una buena cantidad de mantenimiento).

Siendo realistas, es poco probable que suceda, aunque ciertamente hay diferentes opiniones sobre Oracle, no puedo imaginar que hagan algo tan obviamente horrible que todos los principales jugadores que tienen grandes inversiones en Java caerían) es muy rápido. Con toda honestidad, probablemente tomaría cerca de 5 años de decisiones obviamente malas antes de que IBM (por ejemplo) incluso considerara trabajar para usar algo más en lugar de Java. Tienen una inversión lo suficientemente grande en Java que es poco probable que lo suelten hasta o a menos que crean que prácticamente no tienen otra alternativa.

17
Jerry Coffin

Dos respuestas:

1) Android

2) Blackberry

En serio, sin embargo, en el escritorio, puede estar en declive, pero alimenta a los dos competidores para iPhone.

Además, el año pasado, ayudé a un grupo de personas con Java tarea para la escuela. Punto, Java todavía se enseña en las universidades.

Editar:

A partir de octubre de 2011, BlackBerry parece estar en declive. Android todavía se está fortaleciendo.

17
Moshe

Estaba perdiendo importancia en el mercado móvil, pero con Android, lo ha recuperado nuevamente.

14
Casebash

Java será relevante en el futuro previsible, incluso si define relevante para incluir solo código nuevo, no modo de mantenimiento heredado. Sí, el lenguaje apesta y trata a sus programadores como niños traviesos en lugar de consentir a los adultos y no ha tenido un lavado de cara desde la Edad de Piedra. Por otra parte:

  1. Java tiene algunas bibliotecas increíbles.

  2. La JVM es una plataforma increíble.

  3. No tiene que programar en Java para usar estas bibliotecas, ahora que ha habido una proliferación de lenguajes JVM.

En mi humilde opinión, la forma en que evolucionarán las cosas es que Java en el mundo JVM se convertirá en lo que C es en el mundo compilado de forma nativa. La gente usará Scala, Jython, Groovy, etc. en la codificación diaria, pero seguirá llamando viejo, crufty Java de estos lenguajes por toda la eternidad. Ciertos códigos críticos para el rendimiento aún podrían estar escritos en Java, porque es probablemente el lenguaje JVM más eficiente y de nivel más bajo. Antiguo las bibliotecas necesitarán nuevas características agregadas. Por lo tanto, Java seguirá siendo muy relevante incluso si el programador promedio no lo usa día a día.

13
dsimcha

Creo que sí. Anticipo que su popularidad aumentará en los próximos años, con mejoras recientes en el complemento y las mejoras sintácticas en Java 7. Y tiene la ventaja de la gran variedad de buenas bibliotecas de código abierto (en comparación con .NET) que fácilmente podrían mantenerlo vivo durante otros 10 años.

7
finnw

Actualmente Qt está matando Java en aplicaciones de escritorio. Hay muchas reescrituras de Java a Qt. Actualmente estoy trabajando en una de ellas. Desde el día que Comencé mi carrera de programación, siempre hay un rumor de que algo mataría a C++. Por ejemplo, Visual Basic, Java, C #, pero en realidad C++ sigue funcionando. Tiene muchas desventajas pero sigue funcionando. Todos los demás competidores tuvieron una muerte triste. ........

5
Tamilselvan R

Java el idioma puede estar en declive lento, pero Java la plataforma (JVM + JDK) definitivamente ha estado en auge durante los últimos dos años (Scala, Clojure y muchos otros idiomas; Android framework). Es fácilmente la mejor (¿solo viable?) plataforma multi-arquitectura, multi-OS, multi-idioma, escalable desde incrustado dispositivos móviles para empresas mainframe, y actualmente no hay rivales comparables AFAIK. Por lo tanto, esperaría Java la plataforma será relevante en 5 años, e incluso en 15 años. Eso también hace que Java el lenguaje relevante a largo plazo, incluso si su popularidad puede haber pasado el pico.

4
Joonas Pulakka

No creo que pierda relevancia. Java 7 acaba de salir con muchas características interesantes que ayudarán a los desarrolladores a crear un software excelente más fácilmente.

También Java se usa para crear aplicaciones Blackberry; uno de los principales teléfonos móviles corporativos. Es seguro decir que no irá a ningún lado pronto.

4
Sergio

TIOBE califica los usos del lenguaje ... http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

Basado en sus estadísticas Java lidera el camino y probablemente lo hará durante mucho tiempo - # 1 desde 2005. He usado Java en mi carrera y en todas partes en las que he trabajado tuve Java aplicaciones/desarrolladores, incluso en lugares que se consideraban Microsoft Dev Shops. Java es un lenguaje tan fácil de aprender cuando tiene que desarrollar soluciones en un servidor Mac o Linux.

Además, los buenos C/C++ todavía se mantienen fuertes en el n. ° 2 y n. ° 3, mientras que C #, el lenguaje que todos piensan que es el más popular (el mejor marketing de MS), ¡ni siquiera está cerca! Ahora uso C #, pero llevará años igualar la cantidad de código que he escrito en Java y Delphi.

Así que no tenga miedo de aprender o usar Java - siempre hay trabajos publicados para ellos. Entonces, sí Java será muy relevante durante mucho tiempo) tiempo por venir.

4
MDV2000

Soy un desarrollador principal de .NET, aunque trabajo con otros lenguajes (incluido Java) según sea necesario para tener la tarea a mano. Como tal, basado en mi propia experiencia trabajando con el idioma, no creo que vaya a desaparecer pronto, he aquí por qué:

  1. Base de instalación actual - Hay suficientes programas por ahí que necesitarán soporte a largo plazo que hay una razón para que los nuevos desarrolladores aprendan el idioma.
  2. so en el entorno académico - La mayoría de los colegios y universidades están utilizando como uno de sus idiomas introductorios para enseñar OOP y otros conceptos fundamentales, esto significa que seguirá habiendo nuevos desarrolladores que se gradúan y entran en la fuerza laboral que estarán familiarizados con el idioma cuando comiencen.
  3. Es naturaleza multiplataforma - Una obvia, pero el hecho de que sea multiplataforma es un gran problema, incluso más que los teléfonos inteligentes con soporte para Java para dispositivos nuevos. La posibilidad de tener que mantener una sola base de código, pero poder implementar (es decir, vender) aplicaciones para múltiples plataformas será un poco difícil. ¿Te imaginas si iOS y Droid admitieron aplicaciones escritas en Java?
  4. Sin competidor fuerte - En este momento no puedo nombrar un lenguaje que considero un competidor fuerte para Java. Claro que C # está comenzando a aparecer en más plataformas gracias a Mono, pero eso no es lo mismo que tener la misma plataforma cruzada que Java tiene. De acuerdo, hay varios idiomas que hacen qué = Java lo hace (y en algunos casos mejor)) tienden a adaptarse a lo que están haciendo y para algunos proyectos grandes no tiene sentido tener un montón de idiomas para mantener si puede aceptar cualquier golpe de rendimiento que Java podría tener.
4
rjzii

En mi humilde opinión, Java se mantendrá muy relevante y crecerá en uso, a pesar de que realmente no está evolucionando en sus construcciones o poderes.

Aquí está mi razonamiento: - Hay mucho código por ahí, y el mantenimiento requiere más gente que escribir código nuevo.

  • El campamento "Los lenguajes de VM son demasiado lentos" está perdiendo lentamente (especialmente porque Java lo hizo con éxito en algo de negociación).

  • Las grandes empresas lo siguen utilizando en todos los sectores, incluido Oracle.

  • La plataforma Android) está creciendo más rápido que iOS, sin ningún otro competidor a la vista, y eso atrae a más personas al idioma.

  • Es más sencillo de usar para la gente que los lenguajes funcionales. Para los puristas del lenguaje y los académicos es fácil apreciar los lenguajes funcionales y sus capacidades, pero la mayoría de los novatos sin títulos de CS no aprecian completamente el poder del Lambda. Así que no creo que estos idiomas despeguen.

  • Es totalmente gratuito (a diferencia de .NET, que aún está más cerca del ecosistema de Windows a pesar de las alternativas).

3
Uri

No estoy seguro acerca de Java. Pero seguramente la JVM seguirá siendo relevante para muchos otros idiomas.

3
Gulshan

Es uno de los nombres más importantes en la programación empresarial (J2EE). Estoy bastante seguro de que no lo veremos caer en los próximos años.

3
Terence Ponce

Depende de cómo evolucionará el lenguaje.

En el estado actual Java no es muy activo como lenguaje. Nació para soportar un (y solo un) paradigma: OOP. Se coloca en algún punto intermedio entre los lenguajes que permiten abstracciones de nivel superior (como C++) y sus características de metaprogramación) y lenguajes de scripts con capacidades de reflexión (como los comandos Python "exec" y "dir") pero de alguna manera no logra encontrar su lugar real. Básicamente se está volviendo obsoleto como "lenguaje" ". Si no fuera por el hecho de que es un estándar de facto en dispositivos móviles, creo que ya estaría muerto.

En cuanto al hecho de que es un buen lenguaje de enseñanza para OOP Tengo mis dudas de lo que puedo ver: todos los programadores nacidos en Java solo generan patrones de Visitantes y Observadores en todas partes, pero no es que tenga un gran experiencia con Java programadores.

Todavía hay mucho código heredado y en los dispositivos móviles es un estándar. Dicho esto, nunca elegiría Java para un escritorio o una aplicación web. No hay razón para, aparte de las empresas (la mayoría de los gerentes asienten si dices "Java" y eso es, yo supongamos, la razón por la que es un estándar en dispositivos móviles).

3
Emiliano

Java no perderá completamente su relevancia por muchos años más, pero ciertamente está en declive. Si los desarrollos recientes afectarán eso o si Oracle puede cambiar, queda por ver. Pero sí creo que algún día podría ser como COBOL, sin proyectos nuevos, pero tampoco muriendo del todo.

2
indyK1ng

COBOL, Fortran y C siguen siendo relevantes. ¿Cuál es la posibilidad de que Java desaparecerá en cinco años? Posiblemente no habrá muchas novedades Java desarrollo en cinco años, pero apostaría en contra eso también, ya que hay muchas personas que usan Java y las tiendas son bastante lentas para cambiar sus idiomas preferidos.

2
David Thornley

Ha habido algunas tendencias en el mundo Java - particularmente la adopción absolutamente brillante de JRuby y Rails o Groovy and Grails - que indican que Java todavía tiene mucha vida en ello. Luego está la situación Android, que también está a favor de Java. Tan recientemente como Snow Leopard en Mac, ciertos cambios, que ahora admiten Midi sin controladores externos, hacen que también gane posibilidades en el escritorio. Y las aplicaciones Swing finalmente se ven 99% nativas (o al menos hay muchas locuras que creen esto ahora: hace 10 años no había ninguna).

Java tuvo un momento increíble en los 90 donde parecía que era la solución para todo. Ahora está claro que nada es la solución para todo. .Net está pateando traseros, y Ruby, y Python, y PHP (con soluciones CMS tontas y marcos completos con los que las personas se casan de por vida), y Java (con Groovy JRuby JPython lo que sea), y mucho más. La respuesta es:

Espere un universo pluralista

¿Java continuará desempeñando un papel importante en este Universo? Si te refieres a "idiomas que se ejecutan en la JVM", la respuesta es definitivamente. Si la respuesta es solo Java (idioma, JVM, etc.), entonces la respuesta es "quizás no tan importante". Pero vamos, incluso Cobol sigue aguantando.

1
Dan Rosenstark

Creo que los académicos aún necesitan el valor del código abierto en Java. Hay muchas bibliotecas potentes (centradas en fines académicos) desarrolladas en Java.

Estoy de acuerdo en que Java seguirá siendo relevante, pero para segmentos más pequeños.

1
VinkyH

Google escribe mucho en Java y Google es la compañía más grande en la web. Creo que la web es el futuro - aplicación web, computación en la nube - y creo que Java sigue siendo relevante en el futuro.

Y hay Android, que es el futuro de los teléfonos inteligentes en mi opinión. Y algunas personas dicen que los teléfonos inteligentes son el futuro de la computadora, ¿cuál no es mi opinión :), pero también le darían a Java un gran futuro. Así que vaya Java :RE

1
SCBoy

Sospecho que todos los idiomas eventualmente pasan por una fase en la que los expertos dirán "[Idioma] es el COBOL de la [insertar década aquí]".

Java se ha convertido en una herramienta estándar, exclusiva o una de las principales herramientas, en una serie de áreas de desarrollo de software. Su VM es popular como una plataforma sobre la cual construir nuevos idiomas. Existirá demasiado tiempo solo por su inercia masiva, incluso cuando los nuevos y mejores idiomas se vuelvan populares.

1
DarenW

Aquí hay un artículo de ReadWriteEnterprise sobre el declive de Java:

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

Lo que estamos presenciando no es la muerte de Java, sino su transformación. Se está pasando de ser solo una plataforma de uso general que dominó la empresa a ser las entrañas de muchas tecnologías dispares para diversas aplicaciones especiales.

También aborda cómo las herramientas específicas están proporcionando alternativas a Java, pero no necesariamente reemplazándola:

Aunque las bases de datos NoSQL proporcionan una alternativa a las bases de datos relacionales, no significa que las bases de datos relacionales desaparecerán. Del mismo modo, Node.js proporciona una alternativa especializada a Apache, pero no matará a Apache.

0
Britt Wescott

Si está vinculado a alguna industria (es decir, banca; plataformas móviles; etc.) es como preguntar "¿Internet Explorer seguirá siendo relevante en 5 años ...?" Hace 5 años. Hoy en día hay muchas compañías que tienen sitios web internos específicos de IE que no se pueden reescribir desde cero. Entonces no es "relevante" sino "inevitable".

Para responder a su pregunta, no, no es relevante como fuerza impulsora para la innovación; pero sí, es relevante porque muchas industrias requerirán Java aplicaciones para mantenerse durante muchos años por venir.

0
lorenzog