Un poco de historia…

  • Fue creado por Yukihiro Matsumoto (aka Matz) en 1993 en Japón.

  • Matz unió lo mejor de su lenguaje de programación favorito (PERL) para crear un lenguaje potente, flexible e incluso divertido.

  • Escogió lo mejor de la programación (ADA, PERL, SMALLTALK, EIFFEL, LISP) e incluso creó un lenguaje orientado a objetos más potente que Python.

  • Es un lenguaje que fomenta la productividad.

  • EN Ruby primero interesa la mejora entendible por humanos y después por las máquinas.

  • Es perfecto para principiantes, ya que es sencillo.

Características.

  • Mejor amigo del programador.

  • Es un lenguaje de propósito general, es decir, con Ruby se pueden desarrollar todo tipo de aplicaciones diferentes: aplicaciones de servicio web, clientes de correo electrónico, procesamiento de datos en Backend, aplicaciones de red, etc. Cualquier cosa que se te ocurra puedes hacerlo con Ruby.

  • Es un lenguaje interpretado, es decir, no es compilado, se necesita que el intérprete de Ruby evalué el código y lo traduzca en lenguaje de máquina entendible por un ordenador, pero no existe un proceso previo de compilación como en C o Java.

  • Es dinámico y flexible. Con estrategias como la metaprogramación (escribir programas que escriben o manipulan otros programas). Incluso se puede utilizar el propio lenguaje Ruby para alterar el código en tiempo de ejecución.

  • Es de alto nivel, significa que está lejos del lenguaje de máquina y es muy cercano al inglés, a veces parecerá que simplemente se está escribiendo en inglés.

  • Es de software libre (Open Source) y multiplataforma, se puede descargar totalmente gratis de la página oficial y ejecutarlo en diferentes sistemas operativos.

100% Orientado a Objetos

TODO es un objeto, es decir, todo tiene una serie de propiedades (variables de instancia) y sobre el objeto podemos realizar acciones (o ejecutar métodos).

RAILS

Uno de los elementos que hace que Ruby sea tan popular es Ruby On Rails, un Framework que está muy de moda para realizar aplicaciones Web modernas.
Rails está escrito en Ruby, por lo tanto se necesita del mismo para hacer aplicaciones Web.

Demostración

A continuación se presenta una breve explicación de algunas cosas básicas de Ruby (**Todas los comandos se hicieron bajo la terminal del SO Ubuntu 16.04 ++):

  • Una vez que hayas instalado Ruby abres la terminal de tu máquina y ejecutas:

      $ ruby -v
    

    Con este comando podrás ver la versión instalada de Ruby:

VersionRuby

  • Se puede editar un fichero con extensión .rb para programar un Hola Mundo.
    Con el touch creamos el fichero y con el nano lo editamos y lo guardamos:

      $ touch hello_world.rb
      $ nano hello_world.rb
    

    Dentro del fichero colocamos el Hola Mundo:

FicheroHolaMundo

  • Se puede utilizar la función nativa puts, que imprime una línea de texto por la pantalla y se le pasa una cadena de texto, es decir, un objeto de tipo string. Ejecutamos el fichero con la extensión .rb con el siguiente comando:
      $ ruby hello_world.rb
    

Ejecucion

  • Cuando se instala Ruby, este viene con el comando irb, que viene de Interactive Ruby. Este comando nos abre un shell (una consola) donde se pueden ir ejecutando sentencias de Ruby y probar nuestro código. Se pueden declarar variables, realizar operaciones matemáticas (suma, resta, división, división con flotante, multiplicación, potencia, modulo), colocar cadenas de string con comillas simples ‘ ‘ o dobles “ “, etc. Cada expresión que se ejecuta en la consola produce una salida, esto es porque en Ruby toda expresión devuelve un objeto.

irb
operaciones

  • Se pueden crear símbolos (symbol), un tipo de dato que tiene Ruby muy parecido a los string, ya que representa un texto de alguna forma, sin embargo son también muy parecidos a los números ya que son únicos e inmutables.

Imagen 5 en ¿Qué es Ruby?

¿Qué tiene de especial un symbol? Que siempre que se escriba de la misma forma se tiene el mismo object_id, es decir, se esta representando el mismo objeto.
En cambio con una cadena de texto la ejecución continua del método object_id sobre el objeto tipo string nos da un identificador del objeto diferente, porque aunque estén escritos de la misma forma son objetos distintos. Además no se puede cambiar un símbolo, una vez que se define no se puede cambiar un carácter o añadirle algo ya que son inmutables.

  • También están en Ruby los Arrays. En ellos se puede añadir elementos de diferentes tipos, varios elementos a la vez, se puede acceder a un elemento, entre otras acciones.

arrays

  • En Ruby en ningún momento se define el tipo del objeto sobre el que estes trabajando, en el momento de la definición es cuando el intérprete de Ruby hace la asignación.

definicion

  • Están los objetos booleanos: TRUE/FALSE y están las clases de ambos.

booleanos

  • Toda expresión tiene en Ruby un estado verdadero/falso y todo objeto evalúa a true salvo el objeto false o nil (ausencia).

nil

GEMAS

Una gema en Ruby es un conjunto de código empaquetado. Se pueden utilizar las gemas por ejemplo para añadir a nuestro programa funcionalidad que ya ha implementado otro desarrollador para así reutilizar código y ahorrarnos trabajos. Para saber más sobre las gemas de Ruby puedes visitar la página oficial: www.rubygems.org

Artículo desarrollado a partir del vídeo por Ana Gabriela Durán