java - framework - spring mvc example
Web Frameworks: ¿En qué se diferencia el juego de Spring MVC? (1)
Encuentro muy divertido el reclamo de "Java puro" en ambos lados.
Por supuesto, no es realista que un proyecto use absolutamente nada más que Java. Aún así, una etiqueta de "Java puro" debería tener algunos estándares, no creo que ninguno de los marcos califique.
Play en realidad modifica la semántica del lenguaje Java. Eso está bien, siempre que esté claramente especificado. Si haces una manipulación de código de bytes, sé honesto al respecto. Por lo general, se hace mediante el truco de AOP-ish, los métodos de instancia están decorados con comportamientos adicionales, sus comportamientos manifiestos, estos escritos en el código, generalmente se conservan. Esto no es demasiado difícil de aceptar, podemos pretender que nuestro código está subclasificado por el marco y nuestros métodos son anulados con un comportamiento adicional.
En Play, un método estático que llame a otro método estático en la misma clase puede tener efectos mágicos, y el comportamiento no es como una llamada a un método. Ese es un gran problema, si un programador Java ya no puede estar seguro de lo que es una llamada a un método estático.
Spring - bueno, su parte de Java sigue siendo pura Java, de acuerdo. Pero es tan mágico (del punto de vista de Java), y depende tanto de un armazón pesado, llamar a Spring "puro Java", es como llamar a una hamburguesa "puro vegetal" si pasamos por alto la carne. La carne es la mejor parte!
Play Framework ofrece la siguiente descripción general rápida, pero con la excepción del motor de plantillas Groovy (que puede obtener en Spring MVC si lo desea), Spring parece ofrecer las mismas funciones y más ...
¡Arregla el error y vuelve a cargar! ¡Edite sus archivos Java, guarde, actualice su navegador y vea los resultados de inmediato! No es necesario compilar, implementar o reiniciar el servidor. Spring hace esto, lo cual puede ser molesto.
Stateless Model Play es un sistema real de "compartir nada". Listo para REST, se escala fácilmente ejecutando varias instancias de la misma aplicación en varios servidores. Las aplicaciones Spring típicas tienen un nivel de aplicación sin estado; no es puramente RESTful a menos que quieras, pero Spring está "listo para descansar".
Sistema de plantilla eficiente Un sistema de plantilla limpio basado en Groovy como lenguaje de expresión. Proporciona herencia de plantilla, incluye y etiquetas. Spring usa Java, pero Groovy también es una opción.
Resuelva errores rápidamente Cuando ocurre un error, el juego muestra el código fuente y la línea exacta que contiene el problema. Incluso en plantillas. Spring hace esto también.
Todo lo que necesita para crear una aplicación web atractiva Proporciona integración con Hibernate, OpenID, Memcached ... Y un sistema de complementos. Spring se integra con todo y más.
Pure Java Code con Java, use cualquier biblioteca Java y desarrolle con su IDE preferido. Se integra muy bien con eclipse o netbeans. Spring es puramente Java también.
Realmente rápido ¡ Comienza rápido y corre rápido! Subjetivo, pero Spring es bastante rápido.
Entonces, ¿qué hace Play Framework realmente diferente de Spring MVC?
En pocas palabras, ¿qué puede hacer Spring que ese framework Play no pueda (y viceversa)?