Saltar al contenido

Ruby

El lenguaje de programación Ruby es uno de más potentes que hay actualmente, y uno de los más utilizados en el mundo.

Aquí verás un poco como surgió todo y sus funcionales para ayudarte a decidir si quieres aprender este lenguaje.

El creador de Ruby es el japonés Yukihiro Matz Matsumoto, comenzando su desarrollo en 1993 y publicado por primera vez en 1995.

La intención de este lenguaje era buscar una alternativa a otros lenguajes interpretados de scripting, como Perl o Python.

Índice del contenido

Características de Ruby

Ruby es un lenguaje interpretado de scripts y utiliza el paradigma de programación orientada a objetos.

Lenguaje Ruby

Vamos a ver las características principales de Ruby, y así poder comprobar su potencial comparado con otros lenguajes de programación.

Primero de todo, Ruby es orientado a objetos. Podemos decir que absolutamente todo en Ruby es un objeto, hasta los tipos de datos básicos, como pueden ser las cadenas de texto, números o incluso los valores booleanos.

Cada objeto es una clase, relacionada con una superclase, que contiene métodos y variables de instancia, para poder definir un estado al objeto.

Ruby utiliza muy bien el paradigma de POO, así que estas variables son privadas y no pueden verse desde fuera de la clase.

Podemos decir que toda la comunicación que hay entre objetos se hace con los métodos.

Además de los objetos, en Ruby encontramos módulos. Estos módulos también contienen métodos, pero no instancias. Sí que podemos agregar un módulo a una clase, heredando, o mejor dicho mezclando, los métodos de ese módulo.

Si programamos características individuales en módulos separados, podemos combinar esa funcionalidad y reutilizarla en diferentes clases.

De esta manera no tenemos que usar jerarquía de objetos que puede ser más complicada y restrictiva, como en otros lenguajes.

Ruby es un lenguaje dinámico, porque los programas de Ruby no se compilan. Todo el código de clases, módulos y métodos se ejecuta gracias a un intérprete.

Además, podemos modificar las clases más básicas, como Integer o String para ampliarlas. Esto no puedes hacerlo en casi ningún lenguaje de programación.

Las variables no tienes que declararlas, ni siquiera su tipo de datos, lo que significa que cualquier variable puede tener cualquier objeto.

Cuando llamamos a un método de una clase, lo busca por su nombre, no por el tipo de objeto que lo contiene. Podemos llamar igual a los métodos en distintas clases y así no tener que reescribir parte del código.

Ruby también tiene clases Singleton. Singleton es un patrón de diseño, que indica que solo puede haber una instancia de ese objeto en todo el programa.

Si creas una clase de este tipo y lo llamas en diferentes variables, siempre te referirás a los mismos datos.

Cada objeto tiene una clase Singleton por defecto, así que de esta manera no tienes que crear métodos de clases.

Ruby permite metaprogramación. Significa que todo puede ser programable. Por ejemplo, todas las clases derivan de Class, incluso los módulos heredan de la clase Module.

De esta manera, también podrçiamos modificar estas clases y crear diseños abstractos de una manera muy sencilla.

Como ves, Ruby es uno de los lenguajes más flexibles. Los métodos se pueden agregar a clases que ya tenemos sin necesidad de crear subclases, los operadores pueden ser sobreescritos, además de poder modificar la biblioteca que viene con el programa.

¡Y todo esto en tiempo de ejecución si queremos!

Otras características sería que los números enteros tienen precisión múltiple, así que no existe los números sin decimales.

También permite el control de excepciones, la carga dinámica y la gestión por hilos.

Ejemplo del lenguaje Ruby

Empezamos con el ejemplo clásico del primer programa en Ruby, que sería escribir Hola Mundo

% ruby
print "Hola Mundo"

La primera línea es para llamar a ruby desde la línea de comandos, y luego ya podemos ejecutar una instrucción directamente.

Si lo que queremos es guardar nuestro código fuente en un fichero, con extensión .rb, y luego ejecutar el fichero directamente.

Ruby on Rails, el framework web

Uno de los usos más potentes que podemos dar a Ruby es en la programación web.  El framework web basado en Ruby se llama Ruby on Rails.

programacion web ruby on rails

Ruby on Rails utiliza el patrón de diseño MVC (Modelo – Vista – Controlador), y tiene las siguientes características:

  • Es un proyecto de código abierto, por tanto no requiere de licencia comercial.
  • Puedes crear aplicaciones para la web 2.0.
  • Es independiente de la base de datos.
  • Los objetos creados se guardan en la base de datos, a esto se le llama registro activo.
  • La mayoría de lenguajes web obliga a escribir código de configuración, pero con Ruby on Rails no es necesario si sigues las convenciones de nomenclatura que te sugiere.
  • Desarrolo ágil, la mayoría de procesos los crea el framework automáticamente.
  • Rails crea tests simples automatizados que puedes extender, haciendo los test case más fáciles de escribir y ejecutar.
  • Ruby on Rails te ofrece por defecto 3 entornos predeterminados: desarrollo, pruebas y producción. De esta manera, hace el ciclo de desarrollo del software mucho más fácil.
  • Tiene muchos extras, como Ajax para las interficies de usuario, almacenamiento en caché integrado, un framework de e-mailing, y servicios web.

Como ves, si conoces el lenguaje Ruby, podrás crear aplicaciones web de una manera rápida y robusta gracias a Ruby on Rails.

Cursos de Ruby y Ruby on Rails

Puedes aprender las bases de la programación con Ruby, así que no necesitas saber programar para empezar con este lenguaje.

Si lo que te interesa es la parte de programación web, entonces debes buscar cursos para aprender Ruby on Rails, aunque aquí es más difícil encontrar información que no sea en inglés.

Ajustes