¿Ya dominas lo básico? Un curso estructurado de Ruby es la vía rápida para dar el salto.
Ver cursos de Ruby en UdemyEnlace de afiliado. No te cuesta nada extra.
- 01Preparar el entorno (lo que necesitas)
- 02Tu primera salida (puts)
- 03Trabajar con variables
- 04Condicionales (la sentencia if)
- 05Repetir con bucles
- 06Escribir un método (función)
- 07Trabajar con arrays
- 08Bucles con while
- 09Clases (programación orientada a objetos)
- 10Gestión de errores (begin...rescue)
- 11Métodos útiles de los arrays
- 12Funciones recursivas
- 13Usar la biblioteca estándar
- 14La sentencia case/when
- 15El operador ternario
- 16Herencia (extender una clase)
- 17Escribir comentarios
- 18Operadores lógicos (Y, O, NO)
- 19Constantes (nombres que empiezan por mayúscula)
- 20Partir y unir cadenas (split, join)
- 21Escribir código a prueba de nil
- 22Buscar en un array (include?)
- 23Transformar un array (map)
- 24Arrays bidimensionales (datos en forma de tabla)
- 25Escribir tu propia clase de excepción
- 26Valores por defecto en los parámetros
- 27Trabajar con Set
- 28Probar con tu propio método assert
- 29Funciones de orden superior (pasar un bloque)
- 30Pilas y colas (estructuras de datos básicas)
- 31Conversión de tipos
- 32Introducción a las expresiones regulares
- 33El algoritmo de búsqueda binaria
- 34Construir un cifrado César
- 35Entender cómo funciona la ordenación de burbuja
- 36Construir y mostrar fechas
- 37Escribir varios casos de prueba juntos
- 38Acelerar cálculos con memoización
- 39Normalizar cadenas (strip, unificar mayúsculas)
- 40Copia superficial y copia profunda
- 41Enumeraciones básicas
- 42Aplanar un array
- 43Invertir una cadena y detectar palíndromos
- 44Emparejar dos arrays (la operación zip)
- 45Redondear números (floor, ceil, round)
- 46Cadenas de varias líneas (heredoc)
- 47Métodos que devuelven varios valores
- 48Calcular el MCD y el MCM
- 49Dar formato a los números
- 50Limpieza con begin/rescue/ensure
- 51Métodos que funcionan con cualquier tipo
- 52Leer y escribir archivos
- 53Generar números aleatorios
- 54Operadores a nivel de bits
- 55Leer argumentos de la línea de órdenes
- 56Esperar un tiempo determinado (sleep)
- 57Cuidado con los errores de la coma flotante
- 58Leer de la entrada estándar
- 59FizzBuzz (el ejercicio clásico)
- 60Comprobar si un número es primo
- 61Operaciones de conjuntos (unión, intersección, diferencia)
- 62Convertir entre bases (binario, hexadecimal)
- 63Comprobar el equilibrio de los paréntesis
- 64Comprobar si dos palabras son anagramas
- 65Comprobar si un año es bisiesto
- 66Convertir temperaturas
- 67Descomponer en factores primos
- 68[Aplicado] Un pequeño gestor de inventario
Cadenas de varias líneas (heredoc)
En esta lección escribirás un texto largo de varias líneas sin llenarlo de saltos de línea escapados.
Un heredoc empieza con <<~EOT y termina con una línea que contiene solo EOT. Todo lo que hay en medio forma la cadena, con sus saltos de línea. Y dentro funciona la interpolación #{...} igual que en una cadena con comillas dobles.
El código de ejemplo compone un mensaje de tres líneas con el nombre insertado.
La virgulilla de <<~ es la parte importante: hace que Ruby quite la sangría común de todas las líneas. Así puedes sangrar el texto para que quede alineado con el código y aun así salir sin espacios delante. Con <<- solo se permite sangrar el terminador, y el texto sale con toda la sangría dentro. Es la diferencia entre un correo bien formateado y uno con márgenes raros.
Los heredoc se usan para plantillas de correo, mensajes de ayuda de una herramienta de línea de comandos y consultas SQL largas. Si quieres que el contenido salga literal, sin interpolar nada, se escribe el terminador entre comillas simples: <<~'EOT'.
🧪 Este sitio no puede compilar ni ejecutar Ruby directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).
🔗 El mismo tema en otros lenguajes
Mira cómo se escribe lo mismo en otro lenguaje.
