2009-08-13 7 views
7

Sé que este ha sido un tema candente en el pasado, generando muchas guerras de fuego y una actitud de tribu en los foros. Han pasado algunos años y Java ha evolucionado: ahora tenemos más anotaciones para casi todo, buenas herramientas de andamiaje como Appfuse o Spring Roo, etc.Productividad de desarrollo de Ruby on Rails vs. Java en 2009

Me gustaría saber de personas que han desarrollado proyectos reales en RnR y Java (o no un marco) si usted piensa que la velocidad de desarrollo de RnR sigue siendo más rápido que el de Java (este es el principal activo de RnR y para muchas personas la razón para elegir ella) después del primer mes de desarrollo

Tenga en cuenta que esto no es una pregunta sobre otros beneficios como la velocidad de ejecución, la escalabilidad, etc. Sólo desarrollo velocidad.

Además, no se trata de otras alternativas (como usar JRuby y combinar ambos mundos, o Grails). Se trata solo de Java y Ruby.

La sinceridad en este tema sería realmente bienvenida: la mayoría de los blogs parecen ser entusiastas de una de las dos tecnologías.

¡Gracias por cualquier idea!

+0

Actualicé mi respuesta en función de su comentario. –

Respuesta

4

Parece una comparación muy de manzanas y naranjas si tiene que comparar "Ruby on Rails" (un marco específico) y "Java" (un lenguaje de programación de propósito general) sin tener en cuenta los marcos de Java específicos. Por ejemplo, Grails es bastante análogo a Rails en términos de los conceptos y la terminología utilizada; sin embargo, usted está diciendo específicamente que esto no es una pregunta sobre, por ejemplo, Grails, solo sobre Java y Ruby. Pero parece que no solo te estás refiriendo al lenguaje de Ruby, sino que específicamente te refieres específicamente a Ruby on Rails.

En términos de velocidad de desarrollo, diría que no hay mucho para elegir entre Ruby on Rails y Grails, ya que ambos permiten un desarrollo similarmente rápido.

Actualización: Usted dice "Los marcos y herramientas Java son libres", como si los otros no lo son. Pero Groovy y Grails están disponibles bajo licencias de código abierto y también son descargas gratuitas, AFAIK, también gratuitas como en cerveza/habla. Groovy también podría considerarse como un marco sobre Java, extendiendo un punto, ya que se puede llamar libremente a cualquier código Java de Groovy.

Otra plataforma interesante es Django, que funciona en Jython, que se ejecuta en la JVM. Django definitivamente ofrece una alta productividad y un desarrollo rápido, y Django en Jython ofrece esa ejecución en la JVM. ¿También podría descartar esto porque está basado en Python en lugar de Java? La mayor ventaja de productividad que tienen Grails y Django sobre los frameworks solo de Java es que están basados ​​en idiomas dinámicos. Si insiste en apegarse a los marcos de lenguaje de Java + Java, como los disponibles en SpringSource, entonces perderá mucha de la agilidad que proporcionan Python y Groovy, aunque Spring también tiene buenos frameworks si quiere ir por esa ruta.

+0

Estoy descartando Grails porque está basado en Groovy, no por ser un framework. Los frameworks y herramientas de Java son gratuitos. Es Java + el mejor framework disponible hoy en RnR – Juan

3

La respuesta a su pregunta depende de la complejidad de la aplicación involucrada y del conocimiento del desarrollador (es) involucrado (s); un desarrollador con amplios conocimientos en Java puesto a trabajar en una aplicación de Ruby va a ser mucho más lento y viceversa.

Uno de los puntos de venta de RnR es que el desarrollo se supone que es más rápido, por lo que preguntar cuál es más rápido sin tener en cuenta todas las demás variables que afectan su decisión es una pregunta cargada. El desarrollo de Java puede tener costos de desarrollo más altos, pero hay razones por las cuales las personas absorben esos costos.

Las herramientas que aproveche no deben utilizarse porque el desarrollo es "más rápido" o "más fácil" si entra en conflicto con lo que los requisitos le piden.

+0

Tienes razón, pero estoy tratando de medir una métrica: velocidad de desarrollo. No tomaré ninguna decisión basándome únicamente en eso. Solo quiero obtener una respuesta enfocada sobre este tema. Se asume el mismo nivel de experiencia/habilidad para los desarrolladores. – Juan

+0

Creo que me referí a eso. RnR está CONSTRUIDO para ser más rápido en el desarrollo a costa de otros aspectos. La mayoría de los lenguajes dinámicos, si no todos, van a tener tiempos de desarrollo más rápidos. – doomspork

0

Wicket o Play puede traer "straight java + some framework" más cerca de RoR.