¿Cuáles son los mejores frameworks Java de back-end 2017?

Me gustaría compartir 5 marcos que utilizamos en nuestro proceso de desarrollo:

JSF – (Caras JavaServer)
JSF es un marco de utilidad de red de Java, y obtuvo el soporte de Oracle. Este marco puede no ser el mejor marco para el desarrollo de Java, pero es fácil de utilizar debido a la documentación proporcionada por Oracle. Además, si desea un entorno EE Java, no habrá dependencia adicional en JSF. Las herramientas y las bibliotecas ricas se convierten en una hermosa varita mágica que puede respaldar la complejidad de una aplicación. JSF utiliza páginas de servidor de Java y puede soportar diferentes tecnologías de Facelets y XUL.

Puntales
Struts hace que la lista sea nuestra lista de Mejores Java Web Frameworks para 2017. Struts es un Framework para desarrollar la base de la aplicación web. Este marco es un conjunto de interfaces y clases que cooperan para resolver los problemas de un tipo particular. Funciona en el patrón MVC (Modelo-Vista-Controlador). Struts 2 está equipado con un marco de red para numerosas aplicaciones Java. Es el resultado del esfuerzo mixto de varias comunidades de apoyo. A diferencia de las funciones convencionales de Internet, puede crear respuestas dinámicas.

Hibernar
Al hablar sobre los mejores frameworks web de Java, Hibernate ORM no puede ser ignorado. Hibernate es un dispositivo esencial de mapeo de relaciones de objetos para el lenguaje de programación Java. Ofrece un marco de mapeo para un modelo de dominio (orientado a objetos) a una base de datos relacional. Hibernate puede resolver los problemas de incongruencia de la impedancia relacional del objeto sustituyendo la base de datos persistente y directa con funciones de control de objetos de alto nivel. Es un software gratuito distribuido bajo la licencia pública 2.1 de GNU Lesser General.

GWT (Kit de herramientas web de Google)

GWT (Google Web Toolkit) es un conjunto de herramientas de código abierto que permite a los desarrolladores web mantener y crear complejas aplicaciones front-end de JavaScript. Además de algunas bibliotecas nativas, todo en JavaSource se puede construir en una plataforma compatible con archivos integrados de construcción GWT Ant. La aplicación está licenciada bajo la versión Apache License 2.0. El kit de herramientas web de Google destaca enfoques reutilizables para tareas comunes de desarrollo web, a saber, portabilidad entre navegadores, internacionalización, abstracción de la interfaz de usuario, marcadores, gestión del historial, llamadas a procedimientos remotos y asíncrono.

¡Jugar! Marco de referencia

Play Framework le facilita la creación de aplicaciones web con Scala y Java. Se basa en una arquitectura apátrida, apta para la web y ligera. Está construido en Akka y proporciona un consumo de recursos mínimo y predecible (hilos, memoria y CPU) para aplicaciones altamente escalables. El marco de juego es amigable para que los desarrolladores realicen cambios con el editor de texto y el navegador. Play utiliza un modelo completamente asíncrono diseñado en la parte superior de Akka. Además, aunque es apátrida, se escala de manera predecible. Play fue diseñado para las necesidades de las aplicaciones móviles y web modernas.

¿Cuáles son las mejores atracciones en Universal Studio? Bueno, todos son buenos a su manera, ¿no? Si no fueran buenos, habrían sido apagados y desmantelados. Tal es el caso de la tecnología. Cada tecnología que existe, Java o no Java, basada en Java o no basada en Java, tiene un propósito particular. Si la tecnología no fuera lo suficientemente buena, habría perecido o habría quedado inactiva.

Debe observar sus requisitos y luego elegir la tecnología. Aquí hay algunos principios que sigo:

  1. BESO – Mantenlo simple estúpido
  2. Ser minimalista
  1. Una pequeña pila tecnológica significa menos interdependencias, menos requisitos de diversidad de recursos, menos dolores de cabeza de actualización y, en general, menos mantenimiento
  • Ir con código abierto donde sea prácticamente posible
    1. Elija una tecnología que no tenga requisitos de licencia muy restrictivos. “Apache 2.0” es una muy buena licencia
  • Elija tecnologías que estén bien financiadas para un futuro próximo
  • Elija tecnologías que tengan un historial probado
  • Mi primera opción para hacer algo en el backend es Java vainilla y el marco JEE. Una pila basada en Java (sin demasiada hinchazón de otras bibliotecas) satisface todos los requisitos anteriores. De hecho, siempre que sea posible, intentaré maximizar el uso del lenguaje java y las características del marco JEE. Por ejemplo, usaré las funciones EJB de JEE en lugar de adoptar Spring Framework sobre Java.

    Debe comprender sus requisitos de escalabilidad, rendimiento y presupuesto antes de elegir su pila de tecnología. Algún tiempo el microservicio es más adecuado en un solo clúster de contenedores. En ese caso, JEE es una exageración. Los requisitos en varios niveles juegan un papel importante cuando selecciona su pila de tecnología. Sin embargo, esos 5 principios rectores lo ayudarán a mantenerse firme y progresar en la dirección correcta.

    Nada salió tan lejos que pueda destronar a Spring Framework.

    Esto no es de extrañar porque hay una oferta de nivel empresarial de Spring para cada situación. A continuación se presentan algunos de los componentes Spring más utilizados en la empresa:

    1. Marco de primavera
    2. Bota de primavera
    3. Nube de primavera
    4. RESTO de primavera
    5. Servicios web de primavera
    6. Integración de primavera

    Todavía muchas aplicaciones empresariales existentes se ejecutan en el antiguo y confiable marco Struts. Struts 2 también es popular.

    JSF es otro marco popular para web empresarial.

    Hibernate es otro marco ORM de uso común.

    SpringBoot: porque es delgado, productivo y es Spring.

    VertX: si necesita concurrencia

    Akka: si necesitas concurrencia y te gustan los actores

    Quasar: si necesita concurrencia y le gustan los actores y la instrumentación de código

    RxJava: porque ser reactivo es increíble

    Rapidoid: si solo necesitas ser rápido

    Yo uso dos marcos:

    • JEE para cosas más complejas.
    • SparkJava para cosas simples.

    El marco de primavera, sin duda.