Articulo de referencia

Ruby on Rails

{{cite web\n | url = https://rubytalk.org/t/ann-rails-0-5-0-the-end-of-vaporware/12744\n | website = rubytalk.org\n | access-date = 2024-08-01\n | title = [ANN] Rails 0.5.0: The...

Ruby on Rails (simplificado como Rails ) es un framework de aplicaciones web del lado del servidor escrito en Ruby bajo la licencia MIT . Rails es un framework modelo-vista-controlador (MVC), que proporciona estructuras predeterminadas para una base de datos , un servicio web y páginas web . Fomenta y facilita el uso de estándares web como JSON o XML para la transferencia de datos y HTML , CSS y JavaScript para la interfaz de usuario. Además de MVC, Rails enfatiza el uso de otros patrones y paradigmas de ingeniería de software bien conocidos , incluyendo la convención sobre configuración (CoC), el principio DRY ( Don't Repeat Yourself ) y el patrón Active Record . [ 4 ]

La aparición de Ruby on Rails en 2005 influyó enormemente en el desarrollo de aplicaciones web, gracias a características innovadoras como la creación fluida de tablas de bases de datos , las migraciones y la generación de vistas para permitir un desarrollo rápido de aplicaciones. La influencia de Ruby on Rails en otros frameworks web sigue siendo evidente hoy en día, con muchos frameworks en otros lenguajes que toman prestadas sus ideas, incluidos Django en Python ; Catalyst en Perl ; Laravel , CakePHP y Yii en PHP ; Grails en Groovy ; Phoenix en Elixir ; Play en Scala ; y Sails.js en Node.js.

Entre los sitios web conocidos que utilizan Ruby on Rails se incluyen Airbnb , Archive of Our Own , Crunchbase , Dribbble , [ 5 ] GitHub , [ 6 ] Twitch [ 7 ] y Shopify .

Historia

David Heinemeier Hansson extrajo Ruby on Rails de su trabajo en la herramienta de gestión de proyectos Basecamp en la empresa de aplicaciones web 37signals . [ 8 ] Hansson lanzó Rails como código abierto por primera vez en julio de 2004, pero no compartió derechos de commit al proyecto hasta febrero de 2005. En agosto de 2006, el framework alcanzó un hito cuando Apple anunció que incluiría Ruby on Rails con Mac OS X v10.5 "Leopard" , [ 9 ] que se lanzó en octubre de 2007.

Rails versión 2.3 se lanzó el 15 de marzo de 2009, con importantes novedades en plantillas, motores, Rack y modelos anidados. Las plantillas permiten al desarrollador generar una aplicación básica con gemas y configuraciones personalizadas. Los motores ofrecen a los desarrolladores la posibilidad de reutilizar componentes de la aplicación, incluyendo rutas, vistas y modelos. La interfaz del servidor web Rack y Metal permiten escribir código optimizado que enruta alrededor del controlador de acciones. [ 10 ]

El 23 de diciembre de 2008, se lanzó Merb , otro framework para aplicaciones web, y Ruby on Rails anunció que trabajaría con el proyecto Merb para incorporar "las mejores ideas de Merb" a Rails 3, poniendo fin a la "duplicación innecesaria" entre ambas comunidades. [ 11 ] Merb se fusionó con Rails como parte del lanzamiento de Rails 3.0. [ 12 ] [ 13 ]

Rails 3.1 se lanzó el 31 de agosto de 2011, con migraciones reversibles de bases de datos, Asset Pipeline, Streaming, jQuery como biblioteca JavaScript predeterminada y la reciente incorporación de CoffeeScript y Sass al conjunto de herramientas. [ 14 ]

Rails 3.2 se lanzó el 20 de enero de 2012 con un modo de desarrollo más rápido y un motor de enrutamiento (también conocido como motor Journey), Automatic Query Explain y Tagged Logging. [ 15 ] Rails 3.2.x es la última versión que admite Ruby 1.8.7. [ 16 ] Rails 3.2.12 admite Ruby 2.0. [ 17 ]

Rails 4.0 se lanzó el 25 de junio de 2013, introduciendo Russian Doll Caching, Turbolinks y Live Streaming, además de hacer que Active Resource, Active Record Observer y otros componentes fueran opcionales al dividirlos como gemas. [ 18 ]

Rails 4.1 se lanzó el 8 de abril de 2014, introduciendo Spring, Variants, Enums, vistas previas de Mailer y secrets.yml. [ 19 ]

Rails 4.2 se lanzó el 19 de diciembre de 2014, introduciendo Active Job, correos electrónicos asíncronos, Adequate Record, Web Console y claves foráneas . [ 20 ]

Rails 5.0 se lanzó el 30 de junio de 2016, introduciendo Action Cable, el modo API y Turbolinks 5. [ 21 ]

Rails 5.0.0.1 se lanzó el 10 de agosto de 2016, con el uso exclusivo de Rails CLI en lugar de Rake y compatibilidad con Ruby versión 2.2.2 y superiores.

Rails 5.1 se lanzó el 27 de abril de 2017, introduciendo cambios en la integración de JavaScript (gestión de dependencias de JavaScript desde NPM a través de Yarn, compilación opcional de JavaScript usando Webpack y una reescritura de Rails UJS para usar JavaScript puro en lugar de depender de jQuery), pruebas del sistema usando Capybara , secretos cifrados, remitentes de correo parametrizados, rutas directas y resueltas, y un asistente unificado form_with que reemplaza a los asistentes form_tag/form_for. [ 22 ]

Rails 5.2 se lanzó el 9 de abril de 2018, introduciendo nuevas características que incluyen ActiveStorage, Redis Cache Store integrado, Rails Credentials actualizado y un nuevo DSL que permite configurar una Política de Seguridad de Contenido para una aplicación. [ 23 ]

Rails 5.2.2 se lanzó el 4 de diciembre de 2018, introduciendo numerosas correcciones de errores y varias mejoras lógicas. [ 24 ]

Rails 6.0 se lanzó el 16 de agosto de 2019, convirtiendo a Webpack en la opción predeterminada, añadiendo enrutamiento de buzones, un editor de texto enriquecido en línea predeterminado , pruebas paralelas, soporte para múltiples bases de datos, enrutamiento de correo electrónico y un nuevo autocargador. [ 25 ]

Rails 6.1 se lanzó el 9 de diciembre de 2020, añadiendo cambio de conexión por base de datos, fragmentación horizontal de la base de datos , carga anticipada de todas las asociaciones, tipos delegados como alternativa a la herencia de tabla única, eliminación asíncrona de asociaciones, objetos de error y otras mejoras y correcciones de errores. [ 26 ]

Rails 7.0 se lanzó el 15 de diciembre de 2021, reemplazando Node.js y Webpack con mapas de importación para la gestión de JavaScript por defecto, reemplazando Turbolinks con una combinación de Turbo y Stimulus, agregando cifrado en el trabajo a Active Record, usando Zeitwerk exclusivamente para la carga de código, y más. [ 27 ]

Rails 7.1 se lanzó el 5 de octubre de 2023, Dockerfiles admite el uso de Kamal para desplegar su aplicación, mejoras en la autenticación y ahora incluye soporte para Bun . [ 28 ]

Ruby on Rails 8.0.0 se lanzó el 8 de noviembre de 2024. Esta importante versión introduce cambios fundamentales en el desarrollo de Rails, permitiendo a los desarrolladores individuales alojar y gestionar sus aplicaciones de forma independiente sin necesidad de una plataforma como servicio (PaaS) . La actualización se centra en capacitar a los desarrolladores individuales para gestionar sin problemas todos los aspectos del despliegue y la administración de aplicaciones. [ 29 ]

Ruby on Rails 8.1.0 se lanzó el 24 de octubre de 2025. Las características principales incluyen Continuaciones de trabajos activas, Informes de eventos estructurados, CI local y renderizado de Markdown. [ 30 ]

En octubre de 2024 se instituyó una política de mantenimiento revisada [ 47 ]. [ 48 ]

Descripción general técnica

Ruby on Rails evoluciona radicalmente de una versión a otra, explorando el uso de nuevas tecnologías y adoptando nuevos estándares de Internet. Algunas características son muy estables en Ruby on Rails, mientras que otras se reemplazan en favor de nuevas técnicas.

Patrón Modelo-Vista-Controlador

El patrón modelo-vista-controlador (MVC) es la estructura fundamental para organizar la programación de aplicaciones.

En una configuración predeterminada, un modelo en el framework Ruby on Rails se asigna a una tabla en una base de datos y a un archivo Ruby. Por ejemplo, una clase de modelo User generalmente se define en el archivo 'user.rb' en el directorio app/models y se vincula a la tabla 'users' en la base de datos. Si bien los desarrolladores pueden ignorar esta convención y elegir nombres diferentes para sus modelos, archivos y tablas de la base de datos, esta no es una práctica común y generalmente se desaconseja de acuerdo con la filosofía de " convención sobre configuración ". [ 49 ]

Un controlador es un componente del lado del servidor de Rails que responde a las solicitudes externas del servidor web a la aplicación, determinando qué archivo de vista renderizar. El controlador también puede tener que consultar uno o más modelos para obtener información y pasarla a la vista. Por ejemplo, en un sistema de reservas de aerolíneas, un controlador que implemente una función de búsqueda de vuelos necesitaría consultar un modelo que represente vuelos individuales para encontrar vuelos que coincidan con la búsqueda, y también podría necesitar consultar modelos que representen aeropuertos y aerolíneas para encontrar datos secundarios relacionados. El controlador podría entonces pasar un subconjunto de los datos del vuelo a la vista correspondiente, que contendría una combinación de HTML estático y lógica que utiliza los datos del vuelo para crear un documento HTML con una tabla de una fila por vuelo. Un controlador puede proporcionar una o más acciones. En Ruby on Rails, una acción es típicamente una unidad básica que describe cómo responder a una solicitud específica del navegador web externo. Además, tenga en cuenta que el controlador/acción solo será accesible para solicitudes web externas si se le ha asignado una ruta correspondiente. Rails anima a los desarrolladores a usar rutas RESTful , que incluyen acciones como crear, nuevo, editar, actualizar, destruir, mostrar e indexar. Estas asignaciones de solicitudes/rutas entrantes a acciones del controlador se pueden configurar fácilmente en el archivo de configuración routes.rb.

En la configuración predeterminada de Rails, una vista es un archivo .erb , que se evalúa y convierte a HTML en tiempo de ejecución. Como alternativa, se pueden utilizar muchos otros sistemas de plantillas para las vistas.

Ruby on Rails incluye herramientas que facilitan las tareas de desarrollo comunes de forma inmediata, como el scaffolding, que puede construir automáticamente algunos de los modelos y vistas necesarios para un sitio web básico . [ 50 ] También se incluyen WEBrick , un servidor web Ruby sencillo que se distribuye con Ruby, y Rake , un sistema de compilación, distribuido como una gema . Junto con Ruby on Rails, estas herramientas proporcionan un entorno de desarrollo básico.

servidores HTTP

Ruby on Rails generalmente no se conecta a Internet directamente, sino a través de algún servidor web front-end . Mongrel era generalmente preferido sobre WEBrick en los primeros tiempos, pero también puede ejecutarse en Lighttpd , Apache , Cherokee , Hiawatha , Nginx (ya sea como un módulo – Phusion Passenger, por ejemplo – o a través de CGI , FastCGI o mod ruby ​​), y muchos otros. A partir de 2008, Passenger reemplazó a Mongrel como el servidor web más utilizado para Ruby on Rails. [ 51 ] Ruby también es compatible de forma nativa con IBM i . [ 52 ]

JavaScript

Ruby on Rails también destaca por su amplio uso de las bibliotecas JavaScript Prototype y Script.aculo.us para la programación de acciones Ajax . [ 53 ] Ruby on Rails 3.0 separa el marcado de la página (que define la estructura de la página) de la programación (que determina la funcionalidad o lógica de la página). A partir de la versión 7.0, las nuevas aplicaciones Ruby on Rails incluyen la familia de bibliotecas JavaScript Hotwire instaladas por defecto.

Servicios web

Desde la versión 2.0, Ruby on Rails ofrece HTML y XML como formatos de salida estándar. Este último es el que se utiliza para los servicios web RESTful.

CSS

Rails 3.1 introdujo Sass como plantilla CSS estándar .

Plantilla

Por defecto, el servidor utiliza Ruby integrado en las vistas HTML, con archivos que tienen la extensión html.erb. Rails admite el uso de lenguajes de plantillas alternativos, como HAML y Mustache .

Versiones Ruby

Ruby on Rails 3.0 ha sido diseñado para funcionar con Ruby 1.8.7, Ruby 1.9.2 y JRuby 1.5.2+; las versiones anteriores no son compatibles. [ 54 ]

Ruby on Rails 3.2 es la última serie de versiones que admite Ruby 1.8.7.

Estructura del marco

Ruby on Rails se divide en varios paquetes, a saber: ActiveRecord (un sistema de mapeo objeto-relacional para el acceso a bases de datos), Action Pack, Active Support y Action Mailer. Antes de la versión 2.0, Ruby on Rails también incluía el paquete Action Web Service, que ahora ha sido reemplazado por Active Resource. Además de los paquetes estándar, los desarrolladores pueden crear complementos para extender los paquetes existentes. Anteriormente, Rails admitía complementos dentro de su propio marco de trabajo personalizado; la versión 3.2 los desaconseja en favor de las "gemas" estándar de Ruby. [ 55 ]

Despliegue

Ruby on Rails se suele instalar usando RubyGems , un gestor de paquetes [ 56 ] que viene incluido con las versiones actuales de Ruby. Muchos sistemas libres tipo Unix también admiten la instalación de Ruby on Rails y sus dependencias a través de su sistema de gestión de paquetes nativo .

Ruby on Rails se suele implementar con un servidor de base de datos como MySQL o PostgreSQL , y un servidor web como Apache que ejecuta el módulo Phusion Passenger .

Filosofía y diseño

Ruby on Rails pretende hacer hincapié en la Convención sobre la Configuración (CoC) y en el principio de No te Repitas (DRY, por sus siglas en inglés).

La Doctrina Rails es un facilitador perdurable que guía la filosofía, el diseño y la implementación del framework Ruby on Rails. [ 49 ]

"Convención sobre configuración" significa que un desarrollador solo necesita especificar los aspectos no convencionales de la aplicación. Por ejemplo, si existe una clase ` Sale` en el modelo, la tabla correspondiente en la base de datos se llama `sales` por defecto. Solo si se incumple esta convención, como llamar a la tabla "productos vendidos", el desarrollador necesita escribir código relacionado con estos nombres. En general, las convenciones de Ruby on Rails dan como resultado menos código y menos repetición. [ 57 ]

«No te repitas» significa que la información se encuentra en un único lugar, sin ambigüedades. Por ejemplo, al usar el módulo ActiveRecord de Rails, el desarrollador no necesita especificar los nombres de las columnas de la base de datos en las definiciones de clase. En su lugar, Ruby on Rails puede recuperar esta información de la base de datos a partir del nombre de la clase.

"Modelos robustos, controladores ligeros" significa que la mayor parte de la lógica de la aplicación debe ubicarse dentro del modelo, dejando el controlador lo más ligero posible.

HTML Over The Wire (Hotwire), [ 58 ] [ 59 ] compresión conceptual, [ 60 ] [ 61 ] y seguridad robusta [ 62 ] marcan el enfoque de Rails 7.0 para el marco de trabajo de una sola persona. [ a ]

Marcas comerciales

En marzo de 2007, David Heinemeier Hansson solicitó el registro de tres marcas comerciales relacionadas con Ruby on Rails ante la USPTO . Estas solicitudes se refieren a la frase "RUBY ON RAILS", [ 64 ] la palabra "RAILS", [ 65 ] y el logotipo oficial de Rails. [ 66 ] En el verano de 2007, Hansson denegó a la editorial Apress el permiso para usar el logotipo de Ruby on Rails en la portada de un nuevo libro sobre Ruby on Rails escrito por algunos miembros autorizados de la comunidad. El episodio dio lugar a una protesta cortés en la comunidad de Ruby on Rails. [ 67 ] [ 68 ] En respuesta a esta crítica, Hansson respondió:

Solo autorizo ​​el uso promocional [del logotipo de Rails] para productos en los que participo directamente. Por ejemplo, libros en cuyo desarrollo he colaborado o conferencias en cuya organización tengo voz y voto. Sin duda, me esforzaría por proteger todas las marcas registradas de Rails. [ 67 ]

La marca registrada del logotipo fue cancelada el 25 de octubre de 2019. [ 66 ]

Recepción

Escalabilidad

En sus inicios, Rails, que se ejecutaba en el intérprete de Ruby de Matz (el intérprete de referencia de facto para Ruby), había sido criticado por problemas de escalabilidad. [ 69 ] Estas críticas a menudo mencionaban varias caídas de Twitter en 2007 y 2008, que impulsaron la transición parcial de Twitter a Scala (que se ejecuta en la máquina virtual de Java ) para su sistema de colas y otro middleware . [ 70 ] [ 71 ] Los aspectos de la interfaz de usuario del sitio continuaron ejecutando Ruby on Rails [ 72 ] hasta 2011, cuando fue reemplazado debido a preocupaciones sobre el rendimiento. [ 73 ] Por otro lado, muchos desarrolladores de aplicaciones empresariales de Rails se basaron en el diseño de la arquitectura del sistema, incluyendo la elección del motor de base de datos, la configuración de la caché y los servidores, para abordar los problemas de escalabilidad. El autor original de Rails, David Heinemeier Hansson, criticó a Twitter, diciendo que sus problemas de escalabilidad eran consecuencia de sus propias malas decisiones arquitectónicas y no culpa de Rails. Según Hansson, culpar a Rails de sus problemas sin hacer ninguna contribución al marco es una falta de gratitud e injusticia. [ 74 ]

En 2011, Gartner Research señaló que, a pesar de las críticas y las comparaciones con Java, muchas empresas web de consumo de alto perfil están utilizando Ruby on Rails para crear aplicaciones web escalables. Algunos de los sitios más grandes que utilizan Ruby on Rails incluyen Airbnb , Cookpad , GitHub , GitLab , [ 75 ] Scribd , Shopify y Basecamp . [ 76 ] A enero de 2016, se estima que más de 1,2 millones de sitios web utilizan Ruby on Rails. [ 77 ] [ 78 ]

Seguridad

En marzo de 2012, el investigador de seguridad Egor Homakov descubrió una vulnerabilidad de asignación masiva que permitía explotar remotamente ciertas aplicaciones de Rails, y la demostró pirateando GitHub sin mala intención después de que sus intentos anteriores de divulgación responsable fueran rechazados. [ 79 ]

El 24 de septiembre de 2013, se informó de una vulnerabilidad de seguridad en la persistencia de cookies de sesión en Ruby on Rails. En una configuración predeterminada, el hash completo de la sesión se almacena en una cookie de sesión conocida como CookieStore , lo que permite que cualquier sesión autenticada que posea dicha cookie inicie sesión como el usuario objetivo en cualquier momento futuro. Como solución alternativa, se recomienda a los administradores configurar las cookies para que se almacenen en el servidor mediante mecanismos como ActiveRecordStore . [ 80 ]

Los investigadores Daniel Jackson y Joseph Near desarrollaron un depurador de datos llamado "Space" que puede analizar el acceso a datos de un programa Rails y determinar si el programa cumple correctamente con las reglas de restricción de acceso. El 15 de abril de 2016, Near informó que un análisis de 50 aplicaciones web populares que utilizaban Space reveló 23 fallos de seguridad previamente desconocidos. [ 81 ]

Véase también

Notas

  1. Ruby on Rails versión 7.0 permite el marco de trabajo de una sola persona (del cual la aplicación de una sola página es un enfoque) [ 63 ]

Referencias

  1. " [ ANN ] Rails 0.5.0: ¡El fin del vaporware!" . rubytalk.org . 24 de julio de 2004. Archivado del original el 1 de agosto de 2024 . Consultado el 1 de agosto de 2024 .
  2. "Versión (8.1.3)" . Consultado el 26 de marzo de 2026 .
  3. "Versión 8.1.3 · rails/rails · GitHub" . GitHub . Consultado el 26 de marzo de 2026 .{{cite web}}: CS1 mantenimiento: estado de la URL ( enlace )
  4. "Primeros pasos con Rails: ¿Qué es Rails?" . guides.rubyonrails.org . Archivado del original el 29 de abril de 2016 . Consultado el 10 de agosto de 2014 .
  5. Goswami, Shubham. "Django vs Ruby on Rails: la elección para el desarrollo de aplicaciones móviles" . appsearch.org . Archivado del original el 31 de enero de 2021. Consultado el 28 de noviembre de 2020 .
  6. Conrad, Adam (3 de agosto de 2021). "Episodio 471: Jason Meller sobre cómo elegir la pila tecnológica adecuada para un proyecto nuevo" . SE-Radio.net . IEEE . Archivado del original el 9 de noviembre de 2021. Recuperado el 9 de noviembre de 2021 .
  7. "Rompiendo el monolito en Twitch: Primera parte" .
  8. Grimmer, Lenz−− (febrero de 2006). "Entrevista con David Heinemeier Hansson de Ruby on Rails" . MySQL AB . Archivado del original el 25 de febrero de 2013. Recuperado el 8 de junio de 2008 .
  9. Hansson, David (7 de agosto de 2006). "Ruby on Rails se incluirá con OS X 10.5 (Leopard)" . weblog.rubyonrails.org . Archivado del original el 13 de agosto de 2006. Consultado el 8 de junio de 2008 .
  10. Hansson, David (16 de marzo de 2009). "Rails 2.3: Plantillas, Motores, Rack, Metal, ¡y mucho más!" . weblog.rubyonrails.org . Archivado del original el 21 de marzo de 2009. Consultado el 22 de marzo de 2009 .
  11. "El día que Merb se unió a Rails" . rubyonrails.org . 27 de diciembre de 2008. Archivado del original el 9 de febrero de 2013.
  12. "Notas de la versión 3.0 de Ruby on Rails — Guías de Ruby on Rails" . edgeguides.rubyonrails.org . Consultado el 24 de mayo de 2017 .
  13. "Ruby on Rails 3.0 se vuelve modular" . sdtimes.com. 10 de febrero de 2010. Archivado del original el 24 de septiembre de 2010. Consultado el 6 de agosto de 2010 .
  14. "Notas de la versión 3.1 de Ruby on Rails" . guides.rubyonrails.org . 1 de septiembre de 2012. Archivado del original el 27 de agosto de 2012. Consultado el 3 de septiembre de 2012 .
  15. "Notas de la versión 3.2 de Ruby on Rails" . guides.rubyonrails.org . 1 de septiembre de 2012.
  16. David (1 de septiembre de 2012). "Rails/master ahora es 4.0.0.beta" . weblog.rubyonrails.org . Archivado del original el 3 de septiembre de 2012. Recuperado el 3 de septiembre de 2012 .
  17. Rails 3.2.x ahora es compatible con Ruby 2.0.0 por sikachu · Solicitud de extracción n.° 9406 · rails/rails · GitHub Archivado el 29 de julio de 2017 en Wayback Machine . Github.com. Recuperado el 30 de mayo de 2014.
  18. Dhh (25 de junio de 2013). "Rails 4.0: ¡Versión final publicada!" . weblog.rubyonrails.org . Archivado del original el 27 de abril de 2016 . Consultado el 24 de mayo de 2017 .
  19. 1 2 Dhh (8 de abril de 2014). "Rails 4.1.0: Spring, Variantes, Enumeraciones, Vistas previas de Mailer, secrets.yml" . weblog.rubyonrails.org . Archivado del original el 8 de diciembre de 2015. Recuperado el 8 de abril de 2014 .
  20. 1 2 Dhh (19 de diciembre de 2014). "Rails 4.2: Trabajo activo, correos asíncronos, registro adecuado, consola web, claves foráneas" . weblog.rubyonrails.org . Archivado del original el 9 de diciembre de 2015. Recuperado el 5 de diciembre de 2015 .
  21. 1 2 Dhh (30 de junio de 2016). "Rails 5.0: Action Cable, modo API y mucho más" . weblog.rubyonrails.org . Archivado del original el 30 de junio de 2016. Recuperado el 19 de noviembre de 2016 .
  22. 1 2 Dhh (27 de abril de 2017). "Rails 5.1: Amando JavaScript, pruebas del sistema, secretos cifrados y más" . weblog.rubyonrails.org . Archivado del original el 27 de abril de 2017. Recuperado el 10 de mayo de 2017 .
  23. 1 2 "Rails 5.2.0 FINAL: Active Storage, Redis Cache Store, HTTP/2 Early Hints, CSP, Credentials" . weblog.rubyonrails.org . 9 de abril de 2018. Archivado del original el 26 de julio de 2020. Recuperado el 9 de abril de 2018 .
  24. rafaelfranca (4 de diciembre de 2018). "¡Rails 5.2.2 ha sido lanzado!" . weblog.rubyonrails.org . Archivado del original el 5 de diciembre de 2018 . Recuperado el 4 de enero de 2019 .
  25. 1 2 dhh (19 de agosto de 2019). "Rails 6.0: Buzón de acciones, texto de acciones, múltiples bases de datos, pruebas paralelas, Webpacker por defecto y Zeitwerk" . weblog.rubyonrails.org . Archivado del original el 2 de diciembre de 2019. Recuperado el 12 de noviembre de 2019 .
  26. 1 2 eileencodes (9 de diciembre de 2020). "Rails 6.1: Fragmentación horizontal, mejoras en bases de datos múltiples, carga estricta, destrucción de asociaciones en segundo plano, objetos de error y más!" . weblog.rubyonrails.org . Consultado el 28 de diciembre de 2020 .{{cite web}}: CS1 maint: servicio de archivado obsoleto ( enlace )
  27. 1 2 dhh (15 de diciembre de 2021). "Rails 7.0: Cumpliendo una visión" . weblog.rubyonrails.org . Consultado el 16 de diciembre de 2021 .
  28. "Rails 7.1: Dockerfiles, autenticación personalizada, más consultas asíncronas y mucho más!" . Ruby on Rails . Archivado del original el 5 de octubre de 2023 . Consultado el 8 de octubre de 2023 .
  29. "Rails 8.0 lanzado: Empoderando a los desarrolladores para el autoalojamiento" . YouTube . 26 de septiembre de 2024. Archivado del original el 8 de noviembre de 2024. Consultado el 8 de noviembre de 2024 .
  30. "Rails 8.1: Continuaciones de trabajos, eventos estructurados, CI local" . 24 de octubre de 2025. Consultado el 6 de noviembre de 2025 .{{cite web}}: CS1 mantenimiento: estado de la URL ( enlace )
  31. "Matriz de compatibilidad Ruby/Rails" . devalot.com . Archivado del original el 18 de agosto de 2022. Consultado el 5 de marzo de 2021 .
  32. "Actualización de Ruby on Rails" . edgeguides.rubyonrails.org . Consultado el 5 de marzo de 2021 .
  33. "Rails 1.0: ¡Fiesta como si fuera el uno oh oh!" Archivado el 17 de diciembre de 2015 en Wayback Machine . weblog.rubyonrails.org . Recuperado el 9 de junio de 2010.
  34. "Rails 1.2: Admiración por REST, celebración de HTTP y UTF-8" Archivado el 2 de noviembre de 2012 en Wayback Machine . weblog.rubyonrails.org . Consultado el 9 de junio de 2010.
  35. "Rails 2.0: ¡Listo!" Archivado el 28 de mayo de 2010 en Wayback Machine . weblog.rubyonrails.org . Consultado el 9 de junio de 2010.
  36. Rails 2.1: Zonas horarias, dirty, caching, dependencias de gemas, caching, etc. Archivado el 2 de noviembre de 2012 en Wayback Machine . weblog.rubyonrails.org . Consultado el 9 de junio de 2010.
  37. "Rails 2.2: i18n, validadores HTTP, seguridad de subprocesos, compatibilidad con JRuby/1.9, documentación". Archivado el 2 de diciembre de 2008 en Wayback Machine . weblog.rubyonrails.org . Consultado el 9 de junio de 2010.
  38. "Rails 2.3: Plantillas, Motores, Rack, Metal, ¡y mucho más!" Archivado el 21 de marzo de 2009 en Wayback Machine . weblog.rubyonrails.org . Consultado el 9 de junio de 2010.
  39. "Rails 3.0: ¡Ya está listo!" Archivado el 31 de agosto de 2010 en Wayback Machine . weblog.rubyonrails.org . Consultado el 30 de agosto de 2010.
  40. "actualizando a 3.1.0" . Github.com . Archivado del original el 19 de junio de 2016. Recuperado el 31 de agosto de 2011 .
  41. "Preparativos para el lanzamiento de la versión 3.2.0" . Github.com . Archivado del original el 29 de julio de 2017. Consultado el 22 de enero de 2012 .
  42. "Rieles 4 en 30"" . blog.wyeworks.com . Archivado del original el 4 de diciembre de 2012 . Consultado el 15 de diciembre de 2012 .
  43. França, Rafael. "Rails 7.1: Dockerfiles, autenticación personalizada, más consultas asíncronas y más!" . rubyonrails.org . Archivado del original el 5 de octubre de 2023 . Consultado el 5 de octubre de 2023 .
  44. França, Rafael. "El desarrollo de Rails 7.2 comienza ahora" . GitHub . Archivado del original el 25 de noviembre de 2023. Consultado el 26 de septiembre de 2023 .
  45. "Rails 8.0: No se requiere PaaS" .
  46. "Rails 8.1: Continuaciones de trabajos, eventos estructurados, CI local" .
  47. "Política de mantenimiento" .
  48. "Nueva política de mantenimiento de Rails y anuncios de fin de mantenimiento" .
  49. 1 2 "La doctrina de los rieles" . Ruby on Rails . Archivado del original el 8 de febrero de 2021. Recuperado el 7 de junio de 2024 .
  50. Sean Lynch (15 de diciembre de 2007). "fairleads: Rails 2.0 y andamiaje paso a paso" . Fairleads.blogspot.com . Archivado del original el 29 de mayo de 2009. Consultado el 24 de mayo de 2017 .
  51. "Ruby on Rails: Implementación" . rubyonrails.org . Archivado del original el 7 de julio de 2009. Consultado el 3 de diciembre de 2012 .
  52. Maxcer, Chris. "PowerRuby trae soporte para Ruby on Rails empresarial a IBM i" . iPro Developer. Archivado del original el 9 de octubre de 2013. Recuperado el 9 de mayo de 2014 .
  53. Js_Escape_Map. "ActionView::Helpers::JavaScriptHelper" . Api.rubyonrails.org . Archivado del original el 22 de julio de 2011. Recuperado el 24 de mayo de 2017 .
  54. David (29 de agosto de 2010). "Rails 3.0: ¡Ya está listo!" . weblog.rubyonrails.org . Archivado del original el 31 de agosto de 2010 . Recuperado el 30 de agosto de 2010 . Rails 3.0 ha sido diseñado para funcionar con Ruby 1.8.7, Ruby 1.9.2 y JRuby 1.5.2+.
  55. Spastorino (1 de septiembre de 2012). "¡Rails 3.2.0.rc2 ha sido lanzado!" . weblog.rubyonrails.org . Archivado del original el 1 de septiembre de 2012 . Recuperado el 3 de septiembre de 2012 .
  56. "Ruby on Rails: Descargar" . rubyonrails.org . Archivado del original el 12 de diciembre de 2009.
  57. "Primeros pasos con Rails" . guides.rubyonrails.org . Archivado del original el 29 de abril de 2016. Consultado el 10 de marzo de 2014 .
  58. David Heinemeier Hansson (7 de diciembre de 2021) Es el momento adecuado para Hotwire. Archivado el 20 de diciembre de 2021 en Wayback Machine.
  59. David Heinemeier Hansson (6 de septiembre de 2021) Rails 7 tendrá tres excelentes respuestas a JavaScript en 2021+ Archivado el 20 de diciembre de 2021 en Wayback Machine
  60. David Heinemeier Hansson (19 de abril de 2018) La compresión conceptual significa que los principiantes no necesitan saber SQL: ¡aleluya! Archivado el 20 de diciembre de 2021 en Wayback Machine.
  61. David Heinemeier Hansson (15 de mayo de 2018) RailsConf 2018: Conferencia inaugural: FIXME por David Heinemeier Hansson Archivado el 20 de diciembre de 2021 en Wayback Machine Compresión conceptual
  62. David Heinemeier Hansson (31 de agosto de 2020) Seguridad seria. Archivado el 26 de diciembre de 2021 en Wayback Machine.
  63. David Heinemeier Hansson, creador de Ruby on Rails y hey.com (19 de diciembre de 2021) El creador de Ruby on Rails promociona la versión 7.0 como un framework para una sola persona, "como solía ser". Archivado el 20 de diciembre de 2021 en Wayback Machine.
  64. "Estado de la marca registrada "Ruby on Rails" . USPTO . Archivado del original el 14 de octubre de 2007. Consultado el 15 de diciembre de 2021 .
  65. "Estado de la marca registrada "Rails" . USPTO . Archivado del original el 15 de octubre de 2007. Consultado el 15 de diciembre de 2021 .
  66. 1 2 "Estado de la marca registrada del logotipo de Rails" . USPTO . Archivado del original el 15 de octubre de 2007. Consultado el 15 de diciembre de 2021 .
  67. 1 2 Forde, Pete (23 de julio de 2007). "Beginning Rails: From Novice to Professional" . Archivado del original el 5 de agosto de 2007. Recuperado el 1 de agosto de 2007 .
  68. Cooper, Peter (24 de julio de 2007). "David Heinemeier Hansson dice No al Uso del Logotipo de Rails" . Archivado del original el 25 de agosto de 2017. Recuperado el 1 de agosto de 2007 .
  69. "Entrevista de 5 preguntas con el desarrollador de Twitter Alex Payne" . radicalbehavior.com. 29 de marzo de 2007. Archivado del original el 23 de abril de 2009. Recuperado el 4 de noviembre de 2014. Según varias métricas, Twitter es el sitio Rails más grande de la red en este momento. El uso de Rails nos ha obligado a lidiar con problemas de escalabilidad, problemas con los que cualquier sitio en crecimiento eventualmente se enfrenta, mucho antes de lo que creo que lo haríamos con otro framework.
  70. Steve Jenson; Entrevista a Alex Payne y Robey Pointer (3 de abril de 2009). "Twitter en Scala" . artima.com. Archivado del original el 19 de junio de 2009. Recuperado el 18 de julio de 2009. Teníamos un sistema de colas basado en Ruby que usábamos para comunicarnos entre los front-ends de Rails y los demonios, y terminamos reemplazándolo por uno escrito en Scala. El de Ruby funcionaba bastante bien en un estado estable normal, pero el tiempo de inicio y el comportamiento de los fallos eran indeseables.
  71. "Twitter abandona Ruby por Scala" . theregister.co.uk. 1 de abril de 2009. Archivado del original el 12 de agosto de 2017. Consultado el 18 de julio de 2009. Payne afirmó que, para finales de este año, Twitter espera haber migrado toda su infraestructura de middleware y sus API al nuevo lenguaje. Ruby se mantendrá, pero solo en el front-end. "Seguimos satisfechos con Rails para desarrollar funcionalidades orientadas al usuario... en cuanto al rendimiento, funciona bien para quienes navegan por páginas web. Nos hemos alejado del procesamiento asíncrono y de tareas complejas".
  72. Ryan King (25 de septiembre de 2009). "Twitter en Ruby" . Evan Weaver. Archivado del original el 27 de septiembre de 2009. Consultado el 29 de septiembre de 2009. En Twitter usamos Scala para algunas cosas, pero la mayor parte del sitio está escrita en Ruby.
  73. "La búsqueda en Twitter ahora es 3 veces más rápida" . Twitter . Consultado el 6 de junio de 2014 .
  74. "No te dejaré pagarme por mi código abierto" . Archivado del original el 15 de diciembre de 2021. Recuperado el 15 de diciembre de 2021 .
  75. "Por qué seguimos usando Ruby on Rails" . GitLab . Archivado del original el 29 de agosto de 2022. Consultado el 29 de agosto de 2022 .
  76. "He aquí por qué Ruby on Rails está de moda" . Business Insider. Archivado del original el 21 de diciembre de 2011. Consultado el 10 de febrero de 2012 .
  77. "Estadísticas de uso de Ruby on Rails" . trends.builtwith.com . Archivado del original el 12 de febrero de 2012. Consultado el 4 de enero de 2016 .
  78. "Estadísticas de uso de tokens de Ruby on Rails" . trends.builtwith.com . Archivado del original el 14 de marzo de 2016. Consultado el 4 de enero de 2016 .
  79. Protalinski, Emil. "Cómo GitHub manejó el ataque informático" . Zdnet.com . Consultado el 24 de mayo de 2017 .
  80. Brook, Chris (25 de septiembre de 2013). "Problema de seguridad en Ruby on Rails podría exponer cookies" . Threat Post . Servicio de noticias de seguridad de Kaspersky Lab . Consultado el 4 de junio de 2014 .
  81. "Parcheando aplicaciones web" . Noticias del MIT . 15 de abril de 2016. Archivado del original el 27 de julio de 2019. Consultado el 21 de abril de 2016 .

Bibliografía

  • Ruby, Sam; Thomas, Dave; Hansson, David (28 de marzo de 2009). Desarrollo web ágil con Rails (Tercera  ed.). Pragmatic Bookshelf . pág.  850. ISBN 978-1-934356-16-6.
  • Laurent, Simon St.; Dumbill, Edd (28 de noviembre de 2008). Aprendiendo a usar las vías (Primera  ed.). O'Reilly Media . pág.  442. ISBN 978-0-596-51877-6.
  • Lenz, Patrick (1 de mayo de 2008). Simply Rails 2 (Segunda  edición). SitePoint . pág . 450. ISBN  978-0-9804552-0-5.
  • Tate, Bruce; Hibbs, Curt (22 de agosto de 2006). Ruby on Rails: Up and Running (Primera  edición). O'Reilly Media . pág.  182. ISBN 0-596-10132-5Archivado del original el 27 de junio de 2009. Consultado el 12 de julio de 2009 .
  • Holzner, Steve (29 de noviembre de 2006). Comenzando con Ruby on Rails (Primera  ed.). Wrox . pag.  380.ISBN 0-470-06915-5Archivado del original el 23 de abril de 2012. Consultado el 12 de julio de 2009 .
  • Allan Hardy, Jeffrey; Carneiro Jr, Cloves; Catlin, Hampton (20 de julio de 2007). Introducción al comercio electrónico con Ruby on Rails: De principiante a profesional (Primera  ed.). Wrox . pág.  361. ISBN 978-1-59059-686-9Archivado del original el 17 de septiembre de 2010. Consultado el 12 de julio de 2009 .
  • Clark, Mike (15 de mayo de 2008). Recetas avanzadas de Rails (Primera  ed.). Pragmatic Bookshelf. pág.  464. ISBN 978-0-9787392-2-5.
  • Sitio web oficialEdita esto en Wikidata
    • Guías
    • API
  • Rails en GitHub
Obtenido de " https://en.wikipedia.org/w/index.php?title=Ruby_on_Rails&oldid=1361940037 "