
Como veis en el titulo, he diferenciado Ruby de Ruby on Rails, para los que no lo sepais, Ruby es un lenguaje de programación reflexivo y orientado a objetos creado por el programador japonés Yukihiro “Matz” Matsumoto en 1993. Combina una sintaxis inspirada en Python, Perl con caracterÃsticas de programación orientada a objetos similares a Smalltalk.
Comparte también funcionalidad con otros lenguajes de programación como Lisp, Lua, Dylan y CLU. Ruby es un lenguaje de programación interpretado en una sola pasada y su implementación oficial es distribuida bajo una licencia de software libre.
En cambio Ruby on Rails, también conocido como RoR o Rails es un framework de aplicaciones web de código abierto escrito en el lenguaje de programación Ruby, siguiendo el paradigma de la arquitectura Modelo Vista Controlador (MVC).
Trata de combinar la simplicidad con la posibilidad de desarrollar aplicaciones del mundo real escribiendo menos código que con otros frameworks y con un mÃnimo de configuración.
El lenguaje de programación Ruby permite la metaprogramación, de la cual Rails hace uso, lo que resulta en una sintaxis que muchos de sus usuarios encuentran muy legible.
Rails se distribuye a través de RubyGems, que es el formato oficial de paquete y canal de distribución de librerÃas y aplicaciones Ruby.
La filosofÃa de Ruby on Rails se puede resumir en tres principios fundamentales.
· DRY: Don’t Repeat Yourself
· COC: Convention Over Configuration
· Agilidad
DRY: Don’t Repeat Yourself traducido al castellano como “No te repitas” significa que las definiciones deberÃan hacerse una sola vez. Dado que Ruby on Rails es un framework, los componentes están integrados de manera que no hace falta establecer puentes entre ellos. Por ejemplo, en ActiveRecord, las definiciones de las clases no necesitan especificar los nombres de las columnas; Ruby puede averiguarlos a partir de la propia base de datos, de forma que definirlos tanto en el código como en el programa serÃa redundante.
COC: Convention Over Configuration que se traduce como “Convención sobre configuración” significa que el programador sólo necesita definir aquella configuración que no es convencional. Por ejemplo, si hay una clase Historia en el modelo, la tabla correspondiente de la base de datos es historias, pero si la tabla no sigue la convención (por ejemplo blogposts) debe ser especificada manualmente (set_table_name “blogposts”). AsÃ, cuando se diseña una aplicación partiendo de cero sin una base de datos preexistente, el seguir las convenciones de Rails significa usar menos código (aunque el comportamiento puede ser configurado si el sistema debe ser compatible con un sistema heredado anterior)
Agilidad: este punto de la filosofia es heredado de los otros dos puntos. Si sabemos utilizar correctamente el DRY y el COC agilizaremos de forma notable el desarrollo de nuestros aplicativos, consiguiendo reducir al máximo nuestro tiempo de desarrollo.
En mi próximo post hablarémos del Modelo Vista Controlador (MVC)
0 Respuestas a “Introducción a Ruby y a Ruby on Rails (Tutorial ROR I)”
Añade un Comentario