Rails

Los puntos fuertes de Rails

Se puede desarrollar extensas aplicaciones web en Rails sin las numerosas librerías de base requeridas por otros lenguajes. La flexibilidad de Ruby permite extender los desarrollos a niveles antes inimaginables sin demasiados conocimientos teóricos.
Una de las funcionalidades de Rails llamada scaffolding permite implementar interfaces para manipular bases de datos muy rápidamente. A medida que el código de la aplicación evoluciona, el scaffolding (andamiaje, en inglés) se va retirando. Esto permite construir modelos de objetos para manipular las bases de datos usando solo unpar de líneas de código, y dejar que Rails se encargue de las tareas tediosas y repetitivas.
El problema más común de desarrollo en una aplicación web típica implica construir una interfaz web para administrar una base de datos relacional. Para ese tipo de problemas Rails es un framework realmente productivo, gracias a las siguientes características:

MVC y Model2

A mediados de los 70 el patrón MVC (Modelo-Vista-Controlador, o en inglés Model-View-Controller) fue desarrollado principalmente en la comunidad de programadores Smalltalk para reducir el acoplamiento entre la lógica del negocio y la lógica de la presentación. Con MVC es posible poner la lógica del negocio en un objeto de dominio separado y aislar la lógica de presentación en una "vista", que se usa para presentar datos de los objetos del dominio. El controlador administra la navegación entre las vistas, procesa los datos ingresados por el usuario, y reúne y organiza los objetos de dominio adecuados entre el modelo y la vista. Muchos programadores han usado MVC desde ese entonces, implementando aplicaciones MVC en diferentes lenguajes, incluyendo Ruby.
Los desarrolladores web utilizan una variante ligeramente diferente de MVC llamada Model2, que básicamente adopta los mismos principios que el patrón MVC original, adaptándolo a aplicaciones web que se caracterizan por no guardar un estado de la aplicación entre pedido y pedido. En las aplicaciones MVC web los usuarios llaman a un controlador a través de los estándares web. El controlador entonces interactúa con los modelos para obtener los datos y validar la entrada generada por el usuario, entonces hace disponibles los objetos de dominio para mostrarlos en la vista, invocando al generador de vista correcto, basado en la validación de la entrada generada por el usuario y los datos obtenidos del modelo. La capa de vista genera una página web, usando los datos provistos por el controlador, y entonces la aplicación responde con es página web generada por la vista como respuesta al pedido.
Hay muchos proyectos exitosos de este patrón MVC en su variante Model2. Por ejemplo en Java se utiliza Struts, en Python Zope, y en PHP Zend Framework.
¿Qué ocurre cuando creamos una aplicación Rails? Al ejecutar el comando rails nombre_de_la_aplicación, rails se encarga de construir un esqueleto de base que servirá para que la aplicación funcione.

Syndicate content