jueves, 27 de octubre de 2011

RUBY ON RAILS


Ruby on Rails , a menudo abreviado como rieles o RoR , es un código abierto framework de aplicaciones web para el lenguaje de programación Ruby .

Historia

VersiónFecha
Historial de las versiones
1,0 [ 1 ]13 de diciembre 2005
1.2 [ 2 ]19 de enero 2007
2,0 [ 3 ]07 de diciembre 2007
2.1 [ 4 ]01 de junio 2008
2.2 [ 5 ]21 de noviembre 2008
2,3 [ 6 ]16 de marzo 2009
3,0 [ 7 ]29 de agosto 2010
3.1 [ 8 ]31 de agosto 2011
Ruby on Rails fue extraído por David Hansson Heinemeierde su trabajo en Basecamp de una herramienta de gestión de proyectos de 37signals (ahora una aplicación web de la compañía). [ 9 ] Hansson lanzado por primera vez Ruby on Rails como código abierto en julio de 2004, pero no comparten cometer derechos del proyecto hasta febrero de 2005. [ 10 ] En agosto de 2006 el marco alcanzó un hito cuando de Apple anunció que enviaría Ruby on Rails con Mac OS X v10.5 "Leopard" , [ 11 ] que fue lanzado en octubre de 2007.
Versión de Ruby on Rails 2.3 fue lanzado el 15 de marzo de 2009. Nuevos e importantes avances en Ruby on Rails incluyen plantillas, motores, bastidor y las formas anidadas modelo. Las plantillas permiten al desarrollador generar un esqueleto de la aplicación con la costumbre de las gemas y las configuraciones. Motores permiten una reutilización de piezas de solicitud completa con rutas, caminos y ver los modelos. El rack de servidor y la interfaz web de metal permiten una optimización de escribir piezas de código que la ruta alrededor de ActionController. [ 12 ]
El 23 de diciembre de 2008, Merb , otro framework de aplicaciones web se puso en marcha, y Ruby on Rails ha anunciado el compromiso de trabajar juntos. El equipo de Ruby on Rails ha anunciado que trabajarán con el proyecto Merb para llevar "las mejores ideas de Merb" en Ruby on Rails 3, poniendo fin a la "duplicación innecesaria" a través de las dos comunidades. [ 13 ] Merb se fusionó con los carriles como parte de la 3.0 carriles de liberación. 

Introducción técnica

Al igual que muchos frameworks web, Ruby on Rails utiliza el Modelo-Vista-Controlador (MVC) para organizar la arquitectura de programación de aplicaciones.
Ruby on Rails incluye herramientas que facilitan las tareas comunes de desarrollo más fácil "de la caja", como los andamios que se puede construir de forma automática algunos de los modelos y puntos de vista básicos necesarios para una página web . [ 16 ] También se incluyenWEBrick , un sencillo servidor Web Ruby que se distribuye con Ruby, y Rake , un sistema de construcción, distribuidos de una joya . Junto con Ruby on Rails estas herramientas ofrecen un entorno de desarrollo básico.
Ruby on Rails se basa en un servidor Web para ejecutarlo. Mestizo en general se prefirió sobre WEBrick en el momento de la escrituracita requerida ] , pero también puede ser ejecutado por Lighttpd , Abismo , Apache , Nginx (ya sea como un módulo - de pasajeros de ejemplo - oa través de CGI , FastCGI o mod_ruby ), y muchos otros. A partir de 2008, el servidor web de pasajeros reemplazado Mestizo como el servidor web más utilizado para Ruby on Rails. [ 17 ]
Ruby on Rails es también notable por su uso extensivo de las JavaScript bibliotecas Prototype y Script.aculo.us para Ajax . [ 18 ] Ruby on Rails inicialmente utilizado ligero de SOAP para servicios web, lo que más tarde fue sustituido por REST servicios web . Ruby on Rails 3.0 utiliza una técnica llamada JavaScript discreta para separar la funcionalidad (o lógica) de la estructura de la página web. jQuery es totalmente compatible como un reemplazo de Prototype y en Rails 3.1 es la biblioteca por defecto Javascript, lo que refleja un amplio sector moverse hacia el uso de jQuery.
Desde la versión 2.0, Ruby on Rails por defecto ofrece HTML y XML como formato de salida. Esta última es la instalación de servicios web RESTful.
El servidor utiliza rubíes incrustados en los puntos de vista HTML con archivos con la extensión html.erb. Otros métodos de plantillas están disponibles como HAML que elimina gran parte de 'desorden' de la página normal (por ejemplo, html '<' y '>' y rubí guión "fin de)
Ruby on Rails 2.3 se basa en Ruby 1.8.6 . Ruby on Rails 3.0 ha sido diseñado para trabajar con Ruby 1.8.7, Ruby 1.9.2 y JRuby 1.5.2 + ,. versiones anteriores no son compatibles [ 19 ]

Marco de la estructura

Ruby on Rails se divide en varios paquetes, es decir, ActiveRecord (un mapeo objeto-relacional de bases de datos del sistema para el acceso), ActiveResource (proporciona servicios web), actionpack, ActiveSupport y ActionMailer. Antes de la versión 2.0, Ruby on Rails también se incluye la web de Acción paquete de servicio que ha sido sustituido por recurso activo. Aparte de los paquetes estándar, los desarrolladores pueden hacer plugins para ampliar los paquetes existentes.

Despliegue

Ruby on Rails a menudo se instala con RubyGems , un gestor de paquetes [ 20 ] que se incluye con las versiones actuales de Ruby.Muchas distribuciones de Linux también admite la instalación de Ruby on Rails y sus dependencias a través de su lengua materna, el sistema de gestión de paquetes .
Ruby on Rails se suele implementar con un servidor de base de datos como MySQL o PostgreSQL , y un servidor web como Apacheejecutando el pasajero Phusion módulo.
Hay muchos Rubí en los carriles de servicios de alojamiento, tales como Heroku , Engine Yard , y Zona de juegos para Rails.

La filosofía y el diseño

Ruby on Rails tiene por objeto subrayar la Convención sobre la configuración (CoC), y el principio de un rápido desarrollo de No Repeat Yourself (DRY).
"Convención sobre configuración" se refiere a un desarrollador sólo tiene que especificar los aspectos no convencionales de la aplicación.Por ejemplo, si hay una clase de venta en el modelo, la tabla correspondiente en la base de datos se denomina venta por defecto. Sólo si uno se desvía de esta convención, como llamar a la mesa "los productos vendidos", que el desarrollador tiene que escribir el código en relación con estos nombres. En general, las convenciones de Rails Ruby on conducir a menos código y menos repeticiones. cita requerida ]
"No te repitas" significa que la información se encuentra en un solo lugar, sin ambigüedades. Por ejemplo, utilizando el ActiveRecord de Rails módulo, el desarrollador no tiene que especificar los nombres de base de datos de columna en definiciones de clase. En su lugar, Ruby on Rails se puede recuperar esta información desde la base de datos basado en el nombre de la clase.

No hay comentarios:

Publicar un comentario