Pregunta

Me gustaría usar un marco más ligero que Rails (Sinatra / Ramaze / Camping), pero me preocupa que al hacerlo no pueda usar muchas bibliotecas compartidas que se han adaptado a Rails en forma de complementos . ¿Es esto una preocupación importante o la mayoría de estos complementos se pueden usar en diferentes marcos de Ruby?

¿Hay alguna otra desventaja potencial en el uso de un marco Ruby que no sea Rails?

¿Fue útil?

Solución

Todavía puede usar gems en todos los marcos que mencionó, por lo que un montón de cosas es reutilizable. Quiere intercambiar un nuevo ORM, sin problemas. Quiere un resaltado de sintaxis shmacy elegante, sin problemas. Rails ha estado haciendo un gran esfuerzo para alejarse del antiguo modelo de plugin para usar gemas exclusivamente.

Si uno de los otros marcos se ajusta a sus necesidades, mejor úselo. Tenga en cuenta que cuando se trata de documentación y muestras, los rieles tienen más.

Si estuviera aprendiendo a Ruby y quisiera probar un marco web probablemente iría con Rails no porque sea mejor, sino porque tiene herramientas y documentación mucho mejores.

Otros consejos

La mayoría de los módulos Ruby utilizados por Rails (incluso ActiveRecord) se pueden usar sin Rails. Pero luego se pierde el beneficio extra de la integración provista por Rails. Es posible que tenga que trabajar más duro para pegar los módulos de Ruby en el marco de su elección. Tenga en cuenta también que la mayor parte de la documentación sobre los módulos Ruby utilizados por Rails solo le dice cómo usar ese módulo con Rails.

Efectos de red desempeñan un papel importante.

Un problema que surge cuando usa otros frameworks como sinatra, camping, etc. es que rails le brinda una estructura comprobada para sus archivos en su aplicación. Los marcos más pequeños son bastante abiertos y gratuitos.

Esto puede ser una desventaja cuando trabajas con múltiples desarrolladores, ya que necesitas tener conversaciones sobre la creación de convenciones en lugar de simplemente seguirlas.

Si has estado usando Ruby durante menos de un año, apégate a Rails, a menos que tengas una necesidad muy clara que sea mejor manejada por uno de los otros marcos.

Los marcos más ligeros, en particular Sinatra, tienden a ser populares entre las personas que saben exactamente lo que necesitarán y no pueden pagar ningún costo adicional por el código no utilizado. Esencialmente, eliges tu cadena de herramientas, en lugar de quedarte atrapado con lo que Rails te ofrece. (Sí, en Rails, puede reemplazar ActiveRecord, et al. Con otras bibliotecas, pero no es exactamente fácil). Por lo tanto, los marcos más livianos le dan significativamente más libertad, pero también tiene mucho más trabajo por hacer en muchos casos.

Creo que ningún complemento de rieles funcionará de fábrica con ninguno de los marcos alternativos, excepto los complementos ActiveRecord (como Act_as_nested_set, etc.) que aún necesitarán un trabajo de plomería (configurando $ LOAD_PATH y requiriendo el derecho archivos). Recomiendo DataMapper para ORM, no solo es mucho más rápido que ActiveRecord, sino que también está construido de forma muy modular y los complementos son gemas reales que puedes instalar fácilmente. A diferencia, los complementos de ActiveRecord son principalmente parches de mono que tienden a romperse con cada nueva versión.

Sinatra no viene con ningún " goodies " ;, sin Rakefiles, sin esqueletos, sin script / genera, pero en realidad para eso se ha escrito. Gradualmente puede "conectarse" Todas las cosas extra. También hay esqueletos para aplicaciones sinatra que vienen con un diseño básico y valores predeterminados, Puede encontrar estos útiles.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top