2010-01-14 29 views
5

Oigo claims que Ruby on Rails hace que las aplicaciones web sean diez veces más rápidas de escribir. ¿Es esto realmente cierto? ¿Acaban de hacer un montón de herramientas para hacer que las cosas simples sean rápidas y las cosas difíciles imposibles (sin una refactorización seria)? ¿Puede manejar problemas web difíciles, como búsquedas avanzadas y rejillas web AJAX? ¿No pueden otros idiomas usar las técnicas de Rails y ser tan rápidos de codificar?¿Ruby on Rails es MUCHO más rápido para desarrollar código?

No estoy tratando de provocar una guerra santa contra los idiomas. Ni siquiera estoy preguntando si es mejor/peor que otros idiomas con respecto a la sintaxis, la seguridad, la velocidad de ejecución, el uso de la memoria, etc. Esta pregunta ya es hora de codificar. Digamos que tengo una idea para una aplicación web realmente genial (algo complicada) y la quiero salir CUANTO ANTES, ¿Ruby on Rails me dará una ventaja o es solo una exageración? ¿Qué usarías?

Respuesta

5

Martin Fowler hizo un survey on Ruby on Rails productivity preguntando a 30 jefes de proyecto cuál era su estimación subjetiva de la productividad de RoR en comparación con "las mejores herramientas convencionales que conoces". El gráfico parece mostrar al menos una mejora de 2x.

Como notas de @hgimenez, esta encuesta es parte de Ruby at ThoughtWorks de Fowler, que arroja mucha luz sobre este tema.

+0

Esa encuesta más este artículo (http://martinfowler.com/articles/rubyAtThoughtWorks.html) es una lectura obligada. – hgmnz

+0

Tantas buenas respuestas a esta pregunta, pero este artículo dio algunas de las mejores ideas. Sin embargo, debo cuestionar su parcialidad. – User1

4

Diez veces es probablemente un poco exagerado, pero tendría que decir que el desarrollo con RoR es notablemente más rápido que con ASP.NET, que es mi otro conjunto de herramientas de desarrollo web.

3

he encontrado que sea un poco más rápido de los proyectos más sencillos que he trabajado porque

  1. la sintaxis de Ruby es más breve que algunos otros lenguajes como Java y C#
  2. la herramienta de rastrillo automatiza una gran parte del trabajo de configuración de archivos
  3. Rails utiliza convención sobre configuración, así que mientras usted sigue sus supuestos, hay mucho menos que usted necesita para configurar

Grial s es un psuedo-puerto de Rails para el lenguaje Java/Groovy, y ofrece beneficios similares (lenguaje más compacto, una herramienta similar al estilo de rake y convención sobre la configuración).

Advertencia: Si ya eres bastante bueno en otro idioma o marco, y el tiempo de comercialización para este proyecto es tu objetivo final, probablemente será mejor que sigas con lo que sabes. Si se trata más de una experiencia de aprendizaje, entonces digo probar RoR.

20

Digamos que tengo una idea para una aplicación web realmente genial (algo complicada) y la quiero salir CUANTO ANTES, ¿Ruby on Rails me dará una ventaja o es solo una exageración?

Estoy descubriendo que Rails tiene una curva de aprendizaje bastante empinada más allá del caso trivial, y la documentación es bastante escasa. Su primer proyecto no será más rápido, especialmente si es algo complicado.

Si está tratando de traer algo al mercado y el tiempo es esencial, el tiempo que perderá inicialmente aprendiendo Rails y luego refacturando todos sus errores de principiante probablemente superará la productividad que hubiera obtenido de los rieles.

Me gusta Rails, y creo que vale la pena aprenderlo, pero combinar la presión del cronograma con tecnologías desconocidas es una receta para el desastre.

Si necesita ir rápido ahora, use lo que sabe. Si tiene tiempo, tómelo para aprender Ruby and Rails correctamente.

+1

Absolutamente correcto. No debe usar un "proyecto de producción" como un "proyecto de aprendizaje" – kikito

+0

+1 Me gusta esta respuesta también. Ojalá pudiera elegir más de una respuesta. – User1