Estoy buscando un framework web ligero de Ruby y he encontrado Sinatra y Ramaze. Ambos parecen extremadamente ligeros, concisos y simples. Pero no sé lo suficiente como para decir cuáles son las principales distinciones. Tal vez alguien con experiencia con uno o ambos podría comentar?¿Cuáles son las principales diferencias entre Sinatra y Ramaze?
Respuesta
Sinatra no impone MVC.
Otros Rubí ligera frameworks
me gusta _why's Camping (ahora mantiene by the community), que tiene que ser el más ligero de todos ellos (por reciente información [> = v1.9] Ver la Camping links en el Camping wiki, Eleanor McHughe de ' Going off the Rails 'o [v 1.5] de Jeremy McAnally Going Camping slides o estos Camping screencasts, este Camping podcast y Nathaniel Talbott de Why Camping Matters, pero leer la Camping mailing list de cambios información de la versión actual y la evolución y try the latest blog example). También puede ahora read the latest Camping api docs.
Pero realicé un arrastre masivo de 3 días a través de todos los marcos de Ruby más ligeros que pude encontrar que parecían razonablemente actualizados o logrados (estoy tratando de encontrar uno para enseñar a los estudiantes los conceptos básicos de los marcos), para ayudarlo a tomar una decisión, lo siguiente (con Camping) se destacó de la pila (con al menos un nombre de desarrollador para que pueda verificarlos también) ...
Para empezar, esas simpáticas personas de Ramaze solían tener un list of Ruby frameworks but the link is gone, y aquí hay un buen artículo titulado 10 Alternative Ruby web frameworks. También hay un Ruby-forum discussion about Camping and Merb que también cubre ORMs alternativos. Recuerde que algunos de los siguientes son post-Merb y extienden ese enfoque.
Sinatra (Blake Mizerany)
No MVC, sin ORM por defecto. Buena documentación. "Una aplicación web entera se puede encapsular en un único archivo de Sinatra
Sinatra comentarios y enlaces:
- Sinatra on GIT
- Sinatra, A Ruby Web Framework, and Why it Matters
- 'Sinatra Ruby Framework' on Slideshare
- Web app in under 10 minutes
- People explaining why they chose Sinatra
Ramaze (manveru)
Ramaze funciona bien con Ruby 1.9.
opiniones Ramaze y enlaces:
- Ramaze by example (utiliza PostgreSQL):
- Online Ramaze book
- Ramaze: a Ruby framework that will amaze, por Antonio Cangiano
Wuby (Chris Matthieu)
Debido a las críticas : "no se requieren aplicaciones o gemas de terceros para ejecutar aplicaciones Wuby, y la biblioteca Wuby en sí contiene todo lo necesario para ejecutar un daemon HTTP y comenzar a servir solicitudes", "example code tiene un poco de PHP al respecto".
Wuby comentarios y enlaces:
IOWA (Kirk Haines)
En un article on Ramaze by Antonio Cangiano escribe: "Si quieres decir con 'interruptor' simplemente un interruptor general' de mi marco actual/lenguaje de programación/estilo de programación ', no tengo una respuesta real. Un ejemplo sería el muy desconocido framework IOWA de Kirk Haines. Ha estado en uso de producción. durante años, es estable, muy rápido (mucho más rápido incluso que Ramaze), pero su documentación y comercialización son inexistentes. No creo en el seguimiento de un bombo (incluso si es Ramaze) por el simple hecho de frescura, necesito tener un caso de uso para cambiar a algo nuevo."
documentación es escasa aunque Hal Fulton cubre Iowa en The Ruby Way , y aunque el siguiente enlace dice que las cosas se han movido a Swiftcore, eso a su vez dice que están a punto de aparecer en GIT, pero que todavía estaba vacío a partir del 06jul2009. Para aclarar más las cosas, las fechas de IOWA en RubyForge son 2004 así que ... ?
IOWA comentarios y enlaces:
- old site + examples, tutorial
- IOWA 0.99.2.17 on RubyForge
- también ver su ORM Kansas y Swiftiply
Gracias por una excelente publicación, Dave. Lo usaré como referencia. –
¡Me alegra que mis 3 días perdidos en el mundo del framework Ruby hayan demostrado ser útiles! –
Llego tarde a la fiesta, pero: AFAIK, Ramaze no requiere Ruby 1.9. Debería ejecutarse muy bien por debajo de 1.8. – Pistos
creo que es una verdadera cuestión de gusto entre ambos Sinatra y Ramaze. Ambos buenos, ambos livianos.
La gran diferencia sería que Ramaze es más MVC. Sinatra por otro lado funciona como un DSL y es RESTful.
Le sugiero que lea el GET_STARTED de ellas, lo que no llevaría más de unos minutos, y verá la diferencia.
Personalmente me gustan ambos (con una preferencia por Ramaze), pero una cosa que podría ayudarte a tomar una decisión es el hecho de que Sinatra es un poco más popular (creo), por lo que puedes encontrar más documentos en el web.
Por otro lado, puede utilizar Ramaze y ayudar a que sea más popular.El canal de IRC para Ramaze está lleno de personas (incluyéndome a mí) que estarán felices de ayudarlo y responder a todas sus preguntas.
Espero que ayude. Mig
- 1. ¿Cuáles son las principales diferencias entre JavaScript y ActionScript 3?
- 2. ¿Cuáles son las principales diferencias entre EnhancedPatternLayout y PatternLayout?
- 3. ¿Cuáles son las principales diferencias entre Cocoa y CocoaTouch?
- 4. ¿Cuáles son las principales diferencias entre fwrite y write?
- 5. ¿Cuáles son las principales diferencias entre Meteor, Ember.js y Backbone.js?
- 6. ¿Cuáles son las principales diferencias entre StringTemplate y FreeMarker?
- 7. ¿Cuáles son las diferencias entre $ {} y # {}?
- 8. ¿Cuáles son las mayores diferencias entre fopen y curl?
- 9. Go-Scala-Go! ¿Cuáles son las principales diferencias?
- 10. ¿Cuáles son las diferencias entre HTTP 1.0 y 1.1?
- 11. ¿Cuáles son las diferencias entre PECL y PEAR?
- 12. ¿Cuáles son las diferencias entre PHP y Java?
- 13. ¿Cuáles son las principales diferencias entre las API Repa 2 y 3?
- 14. ¿Cuáles son las principales diferencias entre las mejoras de CoffeeScript y Dart en JavaScript?
- 15. ¿Cuáles son las diferencias de uso entre size_t y off_t?
- 16. Pasar de WPF a Silverlight: ¿Cuáles son las principales diferencias?
- 17. ¿Cuáles son las diferencias y similitudes entre MVC y MVVM?
- 18. ¿Cuáles son las principales diferencias entre los dialectos sql de mysql y oracle?
- 19. ¿Cuáles son las principales diferencias entre la programación para Windows XP y Vista?
- 20. ¿Cuáles son las principales diferencias entre Rails 1.X y 2.X
- 21. ¿Cuáles son las principales diferencias entre Socialauth, Scribe-Java y Spring Social?
- 22. ¿Cuáles son las principales diferencias entre HAML, SASS/Brújula y ERB?
- 23. ¿Cuáles son las principales diferencias entre Jetbrains 'MPS y Eclipse Xtext?
- 24. ¿Cuáles son las principales diferencias entre Emacs Lisp y Common Lisp?
- 25. ¿Cuáles son las diferencias entre osql, isql y sqlcmd?
- 26. ¿Cuáles son las diferencias entre Shockwave, Flash y Flex?
- 27. ¿Cuáles son las diferencias entre LinFu.DynamicProxy y Castle.DynamicProxy?
- 28. ¿Cuáles son las diferencias reales entre Zend Framework y Django?
- 29. ¿Cuáles son las diferencias entre romper y salir?
- 30. ¿Cuáles son las diferencias entre ADOdb y PDO en PHP?
Sin embargo, puede implementar fácilmente un modelo MVC alrededor de Sinatra. –
¿Se aplica Ramaze? "De fábrica, un nuevo proyecto utiliza el patrón MVC. Lo bueno de Ramaze es que no estás obligado a utilizar este patrón". - http://ramaze.net/documentation/index.html – ciastek