Encadenamiento opcional y fundamentos del manejo de errores
Use encadenamiento opcional, patrones guard, try?/try! y do/catch para gestionar ausencias y errores. Aprenda Result como alternativa.
Encadenamiento opcional y fundamentos del manejo de errores es una lección gratuita de Swift Academy en CoddyKit. Esta es la lección 1 de 3. 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 Swift Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Swift Academy incluye 3 lecciones en total.
Introducción
Esta lección relaciona los opcionales con el manejo de errores. Explore el encadenamiento, los patrones guard, try?/try! y Result.
Encadenamiento de opcionales
El encadenamiento de opcionales (a?.b?.c) se detiene y devuelve nil si alguno de los enlaces es nil.
struct User { var address: Address? }
struct Address { var city: String }
let u: User? = User(address: Address(city: "Paris"))
print(u?.address?.city) // Optional("Paris")Patrón guard
guard let sale antes si un opcional es nil y mantiene disponible después el valor desempaquetado.
func greet(_ name: String?) {
guard let n = name else {
print("No name")
return
}
print("Hello, \\(n)!")
}
greet(nil)
greet("Ada")try? frente a try!
try? devuelve nil cuando se produce un error. try! provoca un bloqueo si se lanza un error.
enum ParseErr: Error { case bad }
func parse(_ s: String) throws -> Int {
guard let n = Int(s) else { throw ParseErr.bad }
return n
}
let ok = try? parse("10") // Int?
let fail = try? parse("xx") // nil
// let crash = try! parse("xx") // runtime crashdo/catch
do/catch gestiona explícitamente los errores lanzados.
do {
let n = try parse("42")
print(n)
} catch {
print("error:", error)
}Tipo Result
Result<T,Error> representa el éxito o el fallo sin lanzar errores.
func safeParse(_ s: String) -> Result<Int,Error> {
do { return .success(try parse(s)) }
catch { return .failure(error) }
}
print(safeParse("5"))
print(safeParse("oops"))Pregunta sobre el encadenamiento de opcionales
Comprobación rápida: ¿Qué hace el encadenamiento de opcionales?
Resumen
Resumen: Combine opcionales y manejo de errores. Use encadenamiento, guard, try?/try!, do/catch y Result para gestionar de forma segura la ausencia de valores y los fallos.
Preguntas frecuentes
¿La lección «Encadenamiento opcional y fundamentos del manejo de errores» es gratis?
Sí — el texto completo de «Encadenamiento opcional y fundamentos del manejo de errores» 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 Swift Academy, actualiza a CoddyKit PRO. El curso de Swift Academy incluye 3 lecciones en total.
¿Qué aprenderé en «Encadenamiento opcional y fundamentos del manejo de errores»?
Use encadenamiento opcional, patrones guard, try?/try! y do/catch para gestionar ausencias y errores. Aprenda Result como alternativa. Practicas Swift 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 Swift Academy?
No se requiere experiencia previa. Swift 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 1 de 3.
¿Cuánto tiempo toma la lección «Encadenamiento opcional y fundamentos del manejo de errores»?
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 Swift Academy?
Sí. Cada lección de Swift 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
- Encadenamiento opcional y fundamentos del manejo de errores
- do/catch y definición de errores (enums)
- Tipos Result: Result