Ruby es un lenguaje de programación dinámico, interpretado y de alto nivel, conocido por su simplicidad y elegancia. Fue creado por Yukihiro Matsumoto a mediados de la década de 1990 y desde entonces se ha vuelto popular por su legibilidad y facilidad de uso.
Ruby se usa a menudo para el desarrollo web, especialmente con el framework Ruby on Rails, pero también se puede usar en otras áreas. Este lenguaje de programación se caracteriza por su flexibilidad y potentes capacidades, lo que lo convierte en una excelente opción para programadores principiantes.
Ruby admite la programación orientada a objetos, lo que permite crear aplicaciones complejas y escalables. El lenguaje también incluye elementos de programación funcional, lo que lo hace aún más versátil. Ruby es conocido por su concisión y expresividad, lo que permite escribir menos código para realizar las mismas tareas que en otros lenguajes de programación. Esto lo hace ideal para el prototipado rápido y el desarrollo.
Programa simple: ‘Hola, Mundo!’
Comencemos con el ejemplo clásico que muestra la sintaxis básica de Ruby. El programa “Hola, Mundo!” imprime texto en la pantalla. Este ejemplo es el paso inicial tradicional para aprender cualquier lenguaje de programación.
puts 'Hola, Mundo!'

En este ejemplo, se usa el método puts
, que imprime una cadena en la pantalla y agrega una nueva línea después de la impresión. Esta es una de las maneras más sencillas de comenzar a trabajar con Ruby. El método puts
está integrado en Ruby y se usa a menudo para mostrar información en la pantalla, lo que lo convierte en una herramienta indispensable para la depuración y las pruebas de código.
Además de puts
, en Ruby hay otros métodos para mostrar información, como print
y p
. El método print
imprime una cadena sin agregar una nueva línea, mientras que el método p
imprime un objeto en un formato adecuado para la depuración. Estos métodos pueden ser útiles en diversas situaciones, y vale la pena estudiarlos para comprender mejor las capacidades de Ruby.
Trabajo con variables y entrada de datos
Las variables en Ruby pueden contener diferentes tipos de datos, como cadenas, números y matrices. Veamos un ejemplo donde solicitamos al usuario su nombre y edad, y luego los imprimimos en la pantalla.
puts 'Introduce tu nombre:'
name = gets.chomp
puts 'Introduce tu edad:'
age = gets.chomp.to_i
puts "Tu nombre es #{name}, y tienes #{age} años."

En este ejemplo:
gets
lee la entrada del usuario.chomp
elimina el carácter de nueva línea que se agrega al ingresar datos.to_i
convierte la cadena en un número entero.
Las variables en Ruby no requieren una declaración explícita de tipo, lo que hace que el código sea más flexible y fácil de escribir. Esto permite concentrarse en la lógica del programa, y no en los detalles sintácticos. Es importante tener en cuenta que las variables en Ruby son de tipado dinámico, lo que significa que su tipo puede cambiar durante la ejecución del programa.
Además, Ruby admite muchos métodos integrados para trabajar con diferentes tipos de datos. Por ejemplo, las cadenas se pueden convertir fácilmente a números y viceversa, lo que hace que Ruby sea muy conveniente para procesar la entrada del usuario. Esto es especialmente útil al crear aplicaciones interactivas donde se requiere la interacción con el usuario.
Condiciones y bucles
Las condiciones y los bucles permiten ejecutar código según ciertas condiciones o repetirlo varias veces. Consideremos un ejemplo donde el programa comprueba si un número introducido es par o impar.
puts 'Introduce un número:'
number = gets.chomp.to_i
if number.even?
puts 'El número es par.'
else
puts 'El número es impar.'
end
Aquí se usa el método even?
, que devuelve true
si el número es par y false
en caso contrario. Los operadores condicionales, como if
, else
y elsif
, permiten crear construcciones lógicas complejas, lo que hace que los programas sean más flexibles y potentes.
Ahora veamos un ejemplo con un bucle que imprime los números del 1 al 5.
(1..5).each do |i|
puts i
end
Este código usa el rango (1..5) y el método each
, que itera sobre cada elemento del rango y lo imprime en la pantalla. Los bucles en Ruby se pueden implementar usando diferentes construcciones, como while
, until
y for
, lo que permite elegir el método más adecuado para resolver una tarea específica.
Los bucles y las condiciones son los componentes básicos de cualquier programa, y su comprensión es crucial para la programación exitosa. Permiten automatizar tareas repetitivas y tomar decisiones basadas en datos, lo que hace que los programas sean más eficientes y funcionales.
Trabajo con matrices y hashes
Las matrices y los hashes son estructuras de datos que permiten almacenar varios valores. Las matrices almacenan valores en una lista ordenada, mientras que los hashes lo hacen en pares clave-valor. Consideremos un ejemplo de trabajo con una matriz.
fruits = ['manzana', 'plátano', 'cereza']
fruits.each do |fruit|
puts fruit
end
Este código crea una matriz fruits
e itera sobre cada elemento, imprimiéndolo en la pantalla. Las matrices en Ruby admiten muchos métodos, como push
, pop
, shift
y unshift
, que permiten agregar y eliminar elementos, así como cambiar el orden de los mismos.
Ahora veamos un ejemplo con un hash.
person = { name: 'Juan', age: 30, city: 'Madrid' }
person.each do |key, value|
puts "#{key}: #{value}"
end
En este ejemplo, se crea un hash person
que contiene información sobre una persona. El método each
itera sobre cada par clave-valor y los imprime en la pantalla. Los hashes en Ruby también admiten muchos métodos, como keys
, values
y merge
, que permiten trabajar con claves y valores, así como combinar hashes.
Las matrices y los hashes son herramientas poderosas para almacenar y procesar datos. Permiten organizar la información de una forma fácil de usar y proporcionan muchos métodos para manipular los datos. La comprensión de estas estructuras de datos y sus capacidades es un paso importante en el camino hacia el dominio de la programación en Ruby.
Conclusión
Estos ejemplos te ayudarán a comenzar a trabajar con Ruby y a comprender los conceptos básicos del lenguaje. Sigue experimentando y aprendiendo nuevas funciones para profundizar tus conocimientos. Ruby proporciona muchas herramientas y bibliotecas que pueden simplificar significativamente el desarrollo y hacer que el proceso de programación sea más atractivo y productivo. De hecho, puedes consultar Las Mejores Fuentes para Aprender Ruby.