2011-06-06 12 views
7

Mi pregunta se basa en la siguiente pregunta: Choosing a Java Web Framework now? .. solo un año después.Elegir un marco web java 2011

El motivo de mi pregunta es que han sucedido muchas cosas en un año, el marco de juego ha madurado, etc., y quiero saber cuál es el tema principal hoy en día. ¿Cuáles son las ventajas y desventajas de los marcos de hoy?

+1

-1 Supongo que su pregunta de referencia se mantiene abierta para fines históricos, pero no debe utilizarse como un ejemplo de una buena pregunta. No hay una respuesta correcta aquí y esto realmente solo está comenzando una discusión. Yo votaría que esto sea cerrado (si tuviera suficiente representante). –

+0

Votado para ser movido a los programadores stackexchange – canadiancreed

Respuesta

3

centrándose en los marcos de Java, que depende de su finalidad (como todo en él!)

  • En productos para grandes empresas, ya sea que vaya con Java EE o el estándar Struts/primavera/Hibernate. Son apilamientos probados, las necesidades de escalabilidad en ese entorno se satisfacen con esos stacks y ser puntilloso puede ser relevante en ese entorno. Además, aplican una nueva versión de "Nadie fue despedido comprando IBM" con las aplicaciones (Play, Scala, ¿qué es eso?)

  • Para sus proyectos personales, ningún objetivo comercial, justo o divertido, cualquier marco que me gusta. Levantar, jugar, lo que sea.

  • Para una puesta en marcha, yo recomendaría Lift or Play. Personalmente me gusta jugar más, pero YMMV. Ambos son marcos ágiles que simplifican el desarrollo y dan una respuesta rápida. La pareja perfecta para una startup. Las diferencias (sin estado frente a estado, etc.) son lo que debe verificar antes de tomar una decisión.

En Scala vs Java, de nuevo depende. A menos que tenga suerte, no se le permitirá usar Scala en un entorno corporativo (sin embargo, se está extendiendo lentamente). Para su propio proyecto, no importa. Para el inicio, elija el que mejor conozca.Sé que aprender es atractivo, pero si tienes 6 meses de experiencia como aficionado en Scala y 5 años de experiencia comercial en Java, el tiempo y el dolor en crear tu proyecto en Scala no valdrá la pena.

+0

¿Por qué las empresas corporativas no usan Play o Scala, que son opciones válidas? – Raynos

+0

@Raynos la mayoría de las empresas (especialmente las de consultoría) prefieren quedarse con la tecnología "probada y extendida", ya que es más fácil venderla a los clientes (están detrás de la curva del conocimiento) además es más fácil encontrar empleados baratos con el conocimiento (lo más innovador generalmente más caro). Al menos en el mundo de Java :) –

+0

Sin embargo, me gusta estar al principio de la ola de la tecnología. Es mas divertido. Puedo vender Play y Scala con la misma facilidad a los clientes. – Raynos

3

JSP es una tecnología heredada, JSF es como un dinosaurio, es a estado y basado en componentes. Si desea desarrollar aplicaciones distribuidas de alto tráfico que puedan escalar decenas, cientos, miles de nodos, prefiera marcos sin estado sobre componentes basados ​​en estados. Los marcos sin estado pueden escalar fácilmente. Wicket, Tapestry y Lift son con mucha atención también. Hay Click framework pero no tiene innovación ni velocidad. Struts era bueno pero ahora es un viejo marco, Spring mvc 3 es mejor que los puntales. Sí, Spring mvc fue bueno, pero ahora hay mucho más ¡Play! Spring se vuelve como Java EE a tiempo, por otro lado, Play es un framework completamente nuevo con una excelente comunidad y documentación. Su futuro es brillante. Tiene muchas funciones en el núcleo (y es muy ligero) y también hay muchos módulos escritos para jugar (como gemas de rieles). En el último lanzamiento, consiguió websockets, gestión de dependencias, gestión de versiones db, módulo Scala mucho mejor, ...

Especialmente, el nuevo juego scala templating es muy fácil, escriba safe con una sintaxis de estado del arte (como asp. net mvc razor) con un gran rendimiento como se puede ver en la prueba http://www.jtict.com/blog/rails-wicket-grails-play-lift-jsp/ (el juego es más rápido en la prueba)

Puedes usar tanto java como scala con el juego, pero en mi opinión el scala es un lenguaje mejor que java y compite con C#, Ruby, Python con funciones de nueva generación (Java no puede), así que prefiero Scala con Play. Lift es también un framework scala, pero es más y más complicado que jugar y muy lleno de estados.

Además, la plataforma y la selección de idioma son geniales. Como desarrollador de .net experimentado no recomiendo webs asp.net ni asp.net mvc, siempre prefiero las tecnologías de código abierto independientes de la plataforma. Python/Django y Ruby/Rails son lentos y no son seguros. PHP y Perl son tecnologías heredadas. La mejor plataforma hoy en día es jvm (.net funciona solo en windows y mono kill by attachmate), por lo que estás en el camino correcto.

+1

Por favor, póngalo a través de un corrector ortográfico. Y una copia de seguridad "mono murió el mes pasado" – Raynos

+0

gracias :) corrigió un poco – sirmak

+0

Después de leerlo más a fondo es demasiado obstinado. ASP.NET MVC es sólido. Python, Ruby y PHP están bien. Las secuencias de comandos CGI de Perl son heredadas, pero existen marcos de perl modernos (menos populares). Estoy de acuerdo en que Play es sólido, pero no es "el mejor". – Raynos

Cuestiones relacionadas