Prueba Velneo Gratis

Te ofrecemos todo el poder de Velneo durante 1 mes para desarrollar la aplicación que tu empresa necesita.

Saber más
Thank you! Check your email for confirmation.

Java es un callejón sin salida para el desarrollo de aplicaciones empresariales

Nota: este artículo es una traducción de este post.

Antes de que se inventase Java, una de las tendencias clave de la industria era incrementar la productividad de tanto los desarrolladores como del usuario final del software. Por ejemplo, los lenguajes de programación de cuarta generación (4GL) proveían a los desarrolladores profesionales una forma más rápida de desarrollar aplicaciones de software empresarial que usando COBOL, Pascal, C, o C++. Y para usuarios finales, la aparición de herramientas como Dbase, Lotus Notes, VisiCalc les daba la posibilidad sin precedentes de crear pequeñas aplicaciones sin la ayuda de un desarrollador profesional. A principios de los 90 esta tendencia orientada a la productividad se dejó un poco de lado por la aparición de Internet. A partir de entonces los desarrolladores de software empresarial y los vendedores de software tuvieron que apresurarse para programar toda una nueva generación de aplicaciones para la web o correr el riesgo de quedarse atrás en el mercado. Internet hizo que la productividad de los desarrolladores y que los lenguajes de programación de cuarta generación tomaran el asiento de atrás, relegados a un segundo plano.Java estaba donde tenía que estar para el desarrollo de aplicaciones WebJava fue diseñada en 1990 como una opción más sencilla y portable para desarrollar sistemas embebidos que C++ . La invención de la WWW en 1993 introdujo un cambio meteórico en el desarrollo de aplicaciones TIC. Sun Microsystems anduvo rápido para sacar ventaja vendiendo servidores "en red" como churros y ofreciendo Java como la plataforma de desarrollo web. La mayor parte de los vendedores de software de la competencia estaba con la guardia baja y Java se convirtió en el estándar de desarrollo de Internet de hecho para el desarrollo de aplicaciones web para empresas.Salto en el tiempo 20 años a la actualidadVarios informes, como el de Forrester, revelan que Java aún está firmemente implantada en las empresas de programación para el desarrollo de aplicaciones a medida. Sin embargo, los datos siempre nos dicen lo que ha ocurrido en el pasado pero no predicen el futuro. Los desarrolladores de software no deben cometer el error de pensar que la adopción de una tecnología determinada significa siempre que es la mejor.Java no va a desaparecer para el desarrollo de aplicaciones para empresa, de la misma que tampoco se va COBOL. Java aún sigue siendo una gran opción para equipos de desarrollo que han desarrollado la arquitectura y la pericia de desarrollar y mantener aplicaciones empresariales. También es una gran opción (junto con C#) para que los vendedores de software desarrollen herramientas, utilidades y plataformas tipo BPM, CEP, IaaS, y elastic caching platforms (ECP). Software como sistemas operativos, bases de datos y juegos de consola se programan mayoritariamente en C++.

banner-prueba-gratis

Java ha cumplido con su cometido, pero ahora es tiempo de ir hacia adelanteEl desarrollo en Java es demasiado complicado para el desarrollo de software empresarial. Los equipos de desarrollo de aplicaciones empresariales deberían planificar su huída de Java porque:

  • Las necesidades de las empresas han cambiado. El ritmo de cambio es mayor que hace unos años.
  • La autoría del desarrollo está restringida a lenguajes de programación. Aunque la plataforma Java soporta lenguajes de programación adicionales o externos como Groovy y JRuby, la plataforma subyacente limita la innovación de los servicios tradicionales proporcionados por Java. Puedes inventar todos los lenguajes de programación nuevos que quieras, pero todos tienen que ser implementables en la plataforma subyacente.
  • Java ha estropeado la capa de presentación. Swing es una pesadilla y JavaFX es un fracaso. JSF fue diseñado para interfaces de usuario pre-Ajax aunque algunas implementaciones como ICEfaces incorporan Ajax. Hay un flujo constante de nuevos enfoques de IU que reflejan la falta de liderazgo de Java en la capa de presentación.
  • Los frameworks de Java resultan complejos. Hibernate, Spring, Struts y otros frameworks revelan las deficiencias de Java en vez de sus fortalezas. Una plataforma de desarrollo de futuro no debería necesitar una cacofonía de frameworks solo para hacer lo básico.
  • Java está basado en C++. ¿Es realmente esta la mejor forma de desarrollar aplicaciones empresariales?
  • El actual jefe de Java es igual que el jefe anterior. >El reinado de Oracle con poca Java. Los anuncios sobre Java de Oracle han sido decepcionantes. Se centran en más features, más rendimiento, y más acuerdos con otros vendedores. Hasta ahora parece que Oracle continúa con la misma política fracasada de Sun.
  • Java nunca ha sido el único jugador en el mercado. C# no es la alternativa. Es poco más que el estilo Java Microsoft. Sin embargo, hay muchas herramientas nuevas para desarrolladores y las tradicionales pero actualizadas 4GL. Y no nos olvidemos de las plataformas de business rules, las plataformas BPM, y las plataformas de procesamiento de eventos (event processing) que permiten introducir cambios más rápidamente.

¿Qué significa todo esto?: los equipos de desarrollo de aplicaciones deben encontrar una mejor manera de desarrollar aplicacionesMuchos equipos de desarrollo de aplicaciones empresariales ya están usando un conjunto de herramientas y tecnologías para poder sobreponerse a la complejidad e inflexibilidad de las aplicaciones Java.No existen alternativas claras para Java y C# para desarrollos a medida. Por ejemplo, las herramientas BPM son buenas para definir e implementar procesos pero una mala elección para implementar una experiencia de usuario irresistible. El mercado de herramientas de desarrollo de aplicaciones, sin embargo, está empezando a cambiar. Con la próxima generación de herramientas de desarrollo de aplicaciones se podrá:

  • Incrementar dramáticamente la productividad de los desarrolladores.
  • Permitir a los desarrolladores delegar el cambio de los procesos de negocio a los usuarios de las aplicaciones.

Debes transformarte en una máquina ágil de cambio constanteLos equipos de desarrollo de aplicaciones deberían sentarse y crear una estrategia de desarrollo de aplicaciones a tres años y una hoja de ruta que incluya arquitectura, procesos, talento humano, herramientas y tecnología. La plataforma de desarrollo no debe ser lo único que se debe poner sobre la mesa. La computación en la nube y el móvil, para citar otros dos, son otras tendencias que deben tener cabida en la nueva estrategia.

Artículo relacionado: .Net vs Java vs QT... resultado, más leña al fuego
Regístrate ahora y nuestro equipo se pondrá en contacto muy pronto