Zig Academy · Lección

Propagar fallos con try

Eleve los errores con una sola palabra clave.

Lección 3 de 413 pasos

Propagar fallos con try es una lección gratuita de Zig Academy en CoddyKit. Esta es la lección 3 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Zig Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Zig Academy incluye 4 lecciones en total.

La gestión se vuelve repetitiva

Escribir un if-else alrededor de cada llamada susceptible de fallar para reenviar su error se vuelve muy engorroso. Zig ofrece un atajo: la palabra clave try.

try desempaqueta o devuelve

Coloque try antes de una llamada susceptible de fallar. Si tiene éxito, le entrega el valor; si devuelve un error, lo devuelve desde la función actual.

const n = try parse(input);

Es puro azúcar sintáctico

Esa línea es exactamente equivalente a capturar el error y devolverlo usted mismo. try solo escribe el código repetitivo por usted.

const n = parse(input) catch |e| return e;

Su función debe poder fallar

Como try puede devolver un error, la función que lo contiene necesita un tipo de retorno que sea una unión con errores. De lo contrario, el compilador lo rechaza.

fn run() !void {
    const n = try parse(input);
}

Encadenar varios try

Coloque varias llamadas a try seguidas. Cada una detiene la función antes de tiempo si hay un fallo, por lo que el camino exitoso se lee de arriba abajo.

const f = try open(path);
const data = try read(f);

try en medio de expresiones

Puede colocar try dentro de una expresión más grande. El valor desempaquetado pasa directamente a la llamada o a la operación matemática que lo rodea.

const total = base + try parse(input);

try con llamadas void

Aunque una llamada devuelva !void, use try para reenviar cualquier fallo. No obtiene ningún valor, solo un retorno anticipado si hay un error.

try file.writeAll(data);

Los errores suben por la pila

Con try en cada capa, un fallo profundo se propaga hasta arriba, donde finalmente alguna función que llama decide gestionarlo.

Un camino exitoso fácil de leer

La gran ventaja es la claridad: reenviar errores queda reducido a una sola palabra clave, de modo que la lógica principal permanece en primer plano.

try no gestiona errores

Recuerde que try solo reenvía un error; nunca lo recupera. Para reaccionar localmente, debe recurrir a catch.

Cuándo reenviar

Use try cuando lo adecuado sea dejar que quien llama gestione el fallo. La mayoría de las funciones intermedias simplemente pasan los errores hacia arriba.

Comprobación rápida

Escribe try doThing() dentro de una función. ¿Qué ocurre si doThing devuelve un error?

Resumen

Ha aprendido que try desempaqueta el valor si la operación tiene éxito y devuelve el error en caso contrario. Es una forma abreviada de capturar y reenviar, que mantiene limpio el código. ✅

Gratis para empezar

Aprende Zig con un tutor de IA — gratis

Escribe y ejecuta código real en tu navegador, obtén ayuda instantánea de un tutor de IA disponible 24/7 y continúa donde lo dejaste en la web o en la aplicación.

Cursos
30
Lecciones
120

Preguntas frecuentes

¿La lección «Propagar fallos con try» es gratis?

Sí — el texto completo de «Propagar fallos con try» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Zig Academy, actualiza a CoddyKit PRO. El curso de Zig Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Propagar fallos con try»?

Eleve los errores con una sola palabra clave. Practicas Zig Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Zig Academy?

No se requiere experiencia previa. Zig Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 4.

¿Cuánto tiempo toma la lección «Propagar fallos con try»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Zig Academy?

Sí. Cada lección de Zig Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Conjuntos de errores y la unión !T
  2. Devolver errores desde funciones
  3. Propagar fallos con try
  4. Conjuntos de errores inferidos
← Volver a Zig Academy