El manejo de errores en Ruby se realiza mediante la estructura begin-rescue
, que permite capturar y gestionar excepciones dentro de un bloque de código. Con esta herramienta, se pueden prevenir errores inesperados y mantener la ejecución del programa sin interrupciones.
La estructura begin-rescue
en Ruby permite atrapar excepciones que ocurren dentro de un bloque de código y proporcionar una respuesta o acción específica en caso de error. El flujo básico es begin
para iniciar el bloque, rescue
para manejar la excepción, y opcionalmente ensure
para ejecutar un bloque de código final, sin importar si ocurrió un error o no.
begin
# Código que podría generar una excepción
resultado = 10 / 0
rescue ZeroDivisionError => e
puts "Ocurrió un error: #{e.message}"
ensure
puts "Este mensaje se mostrará siempre, sin importar el error"
end
En este ejemplo, se atrapa un error de división por cero (ZeroDivisionError
) y se imprime un mensaje personalizado. Además, el bloque ensure
se ejecuta de todas maneras, independientemente del resultado.
begin
archivo = File.open("archivo_inexistente.txt")
rescue
puts "El archivo no se pudo abrir."
end
begin
# Código que podría generar múltiples excepciones
resultado = 10 / 0
archivo = File.open("archivo_inexistente.txt")
rescue ZeroDivisionError
puts "Error: División por cero."
rescue Errno::ENOENT
puts "Error: El archivo no existe."
end
Para más información, consulta la documentación oficial de Ruby.
Jorge García
Fullstack developer