Encadeamento de optionals e fundamentos do tratamento de erros
Use encadeamento de optionals, padrões guard, try?/try! e do/catch para lidar com ausência e erros. Aprenda Result como alternativa.
Encadeamento de optionals e fundamentos do tratamento de erros é uma aula grátis de Swift Academy no CoddyKit. Esta é a aula 1 de 3. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Swift Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Swift Academy inclui 3 aulas no total.
Introdução
Esta lição relaciona opcionais ao tratamento de erros. Explore encadeamento, padrões com guard, try?/try! e Result.
Encadeamento de opcionais
O encadeamento de opcionais (a?.b?.c) interrompe a operação e retorna nil se qualquer elo for 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")Padrão guard
guard let sai antecipadamente se um opcional for nil, mantendo o valor desembrulhado disponível depois.
func greet(_ name: String?) {
guard let n = name else {
print("No name")
return
}
print("Hello, \\(n)!")
}
greet(nil)
greet("Ada")try? versus try!
try? retorna nil quando ocorre um erro. try! causa um crash se um erro for lançado.
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 trata explicitamente os erros lançados.
do {
let n = try parse("42")
print(n)
} catch {
print("error:", error)
}Tipo Result
Result<T,Error> codifica sucesso ou falha sem lançar erros.
func safeParse(_ s: String) -> Result<Int,Error> {
do { return .success(try parse(s)) }
catch { return .failure(error) }
}
print(safeParse("5"))
print(safeParse("oops"))Pergunta sobre encadeamento de opcionais
Verificação rápida: o que o encadeamento de opcionais faz?
Recapitulação
Recapitulação: combine opcionais e tratamento de erros. Use encadeamento, guard, try?/try!, do/catch e Result para gerenciar ausências e falhas com segurança.
Perguntas Frequentes
A aula “Encadeamento de optionals e fundamentos do tratamento de erros” é grátis?
Sim — o texto completo de “Encadeamento de optionals e fundamentos do tratamento de erros” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Swift Academy, atualize para CoddyKit PRO. O curso de Swift Academy inclui 3 aulas no total.
O que vou aprender em “Encadeamento de optionals e fundamentos do tratamento de erros”?
Use encadeamento de optionals, padrões guard, try?/try! e do/catch para lidar com ausência e erros. Aprenda Result como alternativa. Você pratica Swift Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Swift Academy?
Nenhuma experiência prévia é necessária. Swift Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 1 de 3.
Quanto tempo leva a aula “Encadeamento de optionals e fundamentos do tratamento de erros”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Swift Academy?
Sim. Cada aula de Swift Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Encadeamento de optionals e fundamentos do tratamento de erros
- do/catch e definição de erros (enums)
- Tipos Result — Result