Estaba buscando para ver si hay un equivalente a django/RoR en java.frameworks web Java
que encontré:
¿Alguien ha intentado alguna vez esos marcos, o sabe usted cualquier otro? ¿Son más rápidos que django/RoR?
Estaba buscando para ver si hay un equivalente a django/RoR en java.frameworks web Java
que encontré:
¿Alguien ha intentado alguna vez esos marcos, o sabe usted cualquier otro? ¿Son más rápidos que django/RoR?
Descubrí Grails hace aproximadamente un año, y no he mirado hacia atrás. Se necesitan muchas ideas de Ruby on Rails (originalmente se llamaba Groovy on Rails) y tiene un rico ecosistema de complementos/extensiones. Grails y el lenguaje subyacente de Grails (superconjunto de Java) hacen que sea un placer programar, realmente puedes concentrarte en lo esencial. Su funcionalidad GORM (una capa en hibernación) también es muy poderosa, y además del sistema de complementos, es una de las dos razones más importantes para verificarlo (también puedes usarlo en tus aplicaciones Java).
Con la versión 1.2 a punto de salir, creo que es rica en funciones y lo suficientemente madura como para ser algo que cualquier desarrollador debería tener en su herramienta.
En cuanto a rendimiento, es definitivamente menor que el de Java puro, pero tiene todo lo que necesita para optimizar desde primavera/hibernación/J2EE, y siempre puede caer en java puro para algunas piezas críticas de código.Se han realizado algunos experimentos recientes para permitir ejecutar parte del código de Groovy utilizando la resolución de métodos estáticos, lo que, junto con el soporte dinámico invocado, debería proporcionar grandes aumentos de rendimiento.
Otros para consultar en Java son Spring Roo y AribaWeb.
actualización basada en las calificaciones adicionales
escalabilidad, Productividad, Documentación y Recursos decente consumo
Bueno, sí, el grial parece genial. Pero creo que voy a probar "Jugar", se ve realmente atractivo ...lo único que me preocupa es el consumo de recursos y si es peor o mejor que php/python/ruby, no logré encontrar mucho sobre él en google. – Roch
Suena bien - jugar se ve bien. También consulte los videos de AribaWeb: se ve muy dulce. Solo ten en cuenta que con Grails, también obtienes el poder de Groovy, que en sí mismo es una ventaja (aunque, por supuesto, el rendimiento es una compensación). –
Bien, echaré un vistazo a AribaWeb. Play framework usa también Groovy para sus plantillas ;-) – Roch
No conozco Play Framework, pero para responder a la segunda pregunta, estamos haciendo algunos proyectos con Google Webtoolkit. Podría valer la pena echarle un vistazo.
¡Buena suerte!
No sé acerca de Play Framework, pero Spring MVC o Struts junto Hibernate ofrecerán una funcionalidad similar.
Hay muchas otras opciones disponibles. Básicamente se necesita un marco MVC (Spring MVC, Struts, Wicket) y una herramienta ORM (Hibernate, iBatis). Por supuesto, necesitaría integrar los componentes necesarios usted mismo, pero esto ya se ha hecho muchas veces y podrá encontrar mucha información.
No estoy seguro de si Spring MVC y Hibernate proporciona la misma facilidad de uso que ofrece Ruby on Rails (en realidad, estoy seguro de que es mucho más complicado ...). Play Framework es mucho más parecido a Ruby on Rails, aunque no lo hicimos nosotros mismos y solo vimos el screencast y leímos documentación, así que si quieres tener una experiencia similar al desarrollo usando RoR, creo que mejor puede probar algo como Jugar en lugar de Spring MVC con Hibernate. La ventaja de este último es que es muy potente y es capaz de adaptarse a un modelo de datos existente, por ejemplo (por lo que sé en RoR, eso no es muy trivial en RoR). Otro marco que podría considerar es Groovy on Grails. Si bien no usa Java (usa Groovy), es muy parecido a RoR. Utiliza Spring e Hibernate bajo el capó (si estoy en lo cierto) y la ventaja de Groovy es que no tienes el estricto tipado estático de Java. Ruby on Rails y Django se benefician en gran medida de la naturaleza dinámica del lenguaje en el que se implementa, una característica que se pierde en Java debido a su tipado estático.
Editar: ah, usted ha mencionado Griales ya en su pregunta ...
si griales es una opción (que en realidad no es un java sino un marco maravilloso), entonces el Lift marco basado en Scala sería una opción , también.
Otra opción es RIFE, que intenta tener la configuración mínima de RoR mientras aún está en Java. En su lista, solo Play Framework tiene esa característica, los demás están en la JVM, pero no son Java (si eso es importante para usted).
Stripes parece ser bastante ligero y abarca Convención sobre configuración.
Stripes parece muy interesante. +1 –
¿Qué hay de VRaptor? - usa Spring como DI Container y un motor Controller/View similar a Rails Action-Pack.
Habiendo utilizado struts, wicket, rails & Tapiz, te recomiendo que busques en Tapestry 5.
Es compatible con
El único inconveniente es la documentación, la cual, es bueno, pero un poco escueta, aunque los grupos de usuarios/listas de correo son muy activos y la mayoría de las preguntas se responden bien & con impaciencia.
(Además, asegúrese de que mirar a T5 - y no T4,3,2,1 ..... ya que estos son muy diferentes a la versión actual)
Más sobre por qué here.
Spring Roo dice ser una solución.
Considera intentar Lift Framework. Es realmente genial.
AribaWeb también es compatible con Groovy. Consulte nuestras otras características en http://aribaweb.org/ y descubra nuestro enfoque para hacer que el desarrollo web sea productivo.
Cada vez que esté contemplando una pila de aplicaciones (lenguaje, marco, etc.) también debe considerar qué está tratando de resolver y qué tipo de habilidades de programación tiene a su disposición. Descubrí que los programadores Java más experimentados han sido muy productivos con la pila Groovy y Grails en comparación con los programadores más jóvenes.
usted menciona las siguientes áreas de interés:
Espero que esto ayude.
Utilizamos Stripes framework extensivamente y funciona realmente genial. Es realmente liviano y lo dirige hacia un diseño limpio de sus aplicaciones. Básicamente, oculta las partes más aburridas del desarrollo, para que puedas concentrarte en las cosas divertidas (uno de estos ejemplos es el indexed properties).
He hecho un proyecto con Grails y lo he encontrado muy rápido para algunas tareas, pero hace mucha "magia" detrás de las escenas que dificulta la depuración.
También me encontré leyendo una y otra vez la documentación porque no la sentía natural. Un ejemplo simple es el controlador donde las acciones se definen como campos (Es natural para mí pensar en una acción como método ...). Puedo decir algo acerca de GORM donde necesitas saber algunas palabras especiales que cuando se colocan en campos estáticos hace algo de magia como hacer un campo transitorio ... Sin anotaciones, sin autocompletar ... solo el manual.
¡Como para jugar! Me pareció increíblemente simple y rápido de desarrollar, fácil de aprender y recordar. La comunidad parece más pequeña que la de Grail, pero es más activa y más rápida de responder. La única desventaja es que no se basa en la API de servlet, por lo que algunos filtros de terceros u otras cosas son difíciles de integrar, pero no imposibles. Es importante tener en cuenta que puede implementar una aplicación Play en cualquier servidor web tradicional y convertirlo en una guerra.
En mi opinión, Grails es excelente, pero debe tener mucha experiencia para ser productivo, de lo contrario perderá mucho tiempo con los manuales. Entonces, si ese no es tu caso, ¡debería recomendar Play! Especialmente si no está familiarizado con Groovy
He estado usando http://www.ninjaframework.org/ para micro-servicios y está muy cerca de la mayoría de los paradigmas de mvc, si utilizó rails, asp.net mvc o nancyfx, está listo para funcionar. Está muy cerca de esa filosofía y realmente increíble y fácil de probar. Solo en el lado negativo no hay mucha documentación, pero sigue muy de cerca el patrón mvc. No utiliza nada de propiedad en el marco, por lo que es una solución pura basada en Java. Entonces esto compensa la falta de documentación.
¿Qué elementos de un marco web son importantes para usted? Escalabilidad, productividad, documentación, etc. – Joel
Escalabilidad, productividad, documentación y consumo decente de recursos (incluso si todo el mundo dice que no es tan importante para una aplicación web, en un entorno de nube será) – Roch
punto de referencia de rieles, wicket, grails, play, list, jsp: http : //www.jtict.com/blog/rails-wicket-grails-play-lift-jsp/ –