Comunidad de diseño web y desarrollo en internet online

Introducción a Ruby on Rails

Una de las cosas que siempre me ha asombrado es cuando toda la comunidad de una tecnología nueva dice: “esto es simple”, “esto es fácil”, “esto es hermoso” y cuando me muestran cómo se hace algo, me muestran, como si fueran trucos de magia, una serie de acciones que me dejan un poco asustado e intimidado respecto a esta nueva tecnología. Es por eso que quiero comenzar estos tutoriales siguiendo un poco el mismo camino que tuve que seguir para aprender sobre muchos temas que no conocía.

Cuando hablamos de Ruby on Rails hablamos de dos cosas. Por un lado hablamos de Ruby, un lenguaje de programación de los tantos que hay. ¿Qué lo hace especial? Como toda tecnología tiene características muy buenas e interesantes que sería muy largo listar pero lo que lo hace especial es que realmente es como arcilla moldeable y permite, con gran flexibilidad, programar de una forma muy cómoda.

Otra cosa que me gusta mucho de Ruby es que no dejas de encontrar novedades en cada rincón que recorres y siempre me está asombrando. Pero, como todo en la vida, tiene que ver con el gusto del programador. Un programador experto puede dar aquí diez millones de razones técnicas de lo hermoso de este lenguaje pero yo no voy a hacer eso. Yo solamente te voy a invitar a que lo pruebes pero un poco más adelante.



Por otro lado hablamos de Rails, un framework que se usa para desarrollo web como otros frameworks que hay para Ruby: Sinatra, Padrino, Waves, Camping, Remaze y otros muchos pero ¡un momento!

¿Qué es un Framework?


Claro, todos me comienzan a hablar de frameworks para Java, PHP, Ruby, Python. Ay si! Ay si! que Synfony, que CakePHP, Rails, Django y ¡nadie me ha dicho qué es un Framework!. No te voy a dar una explicación muy técnica ya que esa la puedes leer aquí.

Yo te voy a contar una versión resumida de lo que es.

Supongamos que programas en un lenguaje determinado. Digamos Java para no amarrarlo a Ruby. Digamos que eres feliz desarrollando en Java y realizas varios proyectos. De pronto en todos los proyectos te das cuenta que tienes que ingresar números enteros por la consola. Esto es muy pesado pues todo lo que entra por teclado en la consola es texto y cuando necesitas que el valor sea numérico te ves enfrentado a la necesidad de convertirlo.

Tenemos algo como esto:

Código :

int miVariableNumerica;
miVariableNumerica = Integer.parseInt(in,readLine());


…esa línea hace que, lo que ingreso por teclado (in.readLine()) se convierta en un entero (Integer.parseInt). Luego de poner unas 1000 veces eso, decido que estoy aburrido de ponerlo siempre y decido crear una biblioteca que me permita simplificarme el trabajo porque siempre me estoy equivocando en la sintaxis y con tantas mayúsculas y minúsculas me confundo.

Decido que la mejor forma de cambiar esta situación es crear un método llamado ingresaEntero que reciba ese ingreso por teclado y haga esa operación.

Muy bien! Entonces en un archivo llamado miFramework.java creo esto:

Código :

class miFramework
   public int ingresaEntero(String ingreso){
       int respuesta;
       respuesta  = Integer.parseInt(ingreso);
       return respuesta;
}
end


Bien, a partir de este punto podemos usar en el programa principal algo como:

Código :

int numero;
numero =  ingresaEntero(in.readLine());


Estoy tan felíz con eso que decido hacer lo mismo con in.readLine() y lo llamo a ese método leerTeclado. Luego comienzo a darme cuenta de que, por ejemplo, siempre que me conecto a la base de datos realizo el mismo código y decido crear un método llamado conectar(String NombreBase de Datos) y así comienzo a poner todas las tareas repetitivas bajo métodos y nombres de comando que engloban una o varias tareas. Si a esto le sumo patrones, acciones, eventos, etc y tienen un entorno de trabajo uniforme entonces nace un Framework (desde un punto de vista resumido por supuesto).

Entonces cuando en un framework como Rails pones una instrucción, por lo general, lo que hace es realizar varias instrucciones de Ruby que pueden pasar por acciones como por ejemplo, crear un HTML, crear una tabla, crear una controladora y dejar todo listo e interrelacionado para que tú puedas programar solamente la inteligencia de negocio. El objetivo de usar un framework es dejar las tareas repetitivas y las mejores prácticas en manos del framework.

Y eso es a “groso modo” lo que es un framework y su funcionamiento. Si bien aquí solamente estamos dando una ligera introducción lo importante es que te hagas una idea de cómo funciona, pues en la segunda parte vamos a comenzar con el uso de Rails, entonces ya tendrás una idea de qué es lo que está pasando cada vez que pones un comando y ocurren cosas mágicas y maravillosas.

Ve a la segunda parte, donde veremos la parte técnica del framework


En la segunda parte de la introducción a Ruby on Rails aprenderás mucho más a fondo cómo crear proyectos e nteros en RoR.

¿Sabes SQL? ¿No-SQL? Aprende MySQL, PostgreSQL, MongoDB, Redis y más con el Curso Profesional de Bases de Datos que empieza el martes, en vivo.

Publica tu comentario

o puedes...

¿Estás registrado en Cristalab y quieres
publicar tu URL y avatar?

¿No estás registrado aún pero quieres hacerlo antes de publicar tu comentario?

Registrate