Tratamento de Exceção com erros customizados em Swift
21
0

Tratamento de Exceção com erros customizados em Swift

Utilizar erros customizados pode deixar seu código mais compreensível e organizado, pois adiciona uma "descrição" para determinadas situações que podem ocorrer.

Matheus dos Reis de Jesus
1 min
21
0
&nbsp; Capa por&nbsp;<a href="https://unsplash.com/@sigmund?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Sigmund</a>&nbsp;no&nbsp;<a href="https://unsplash.com/s/photos/error?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Unsplash</a>
  Capa por Sigmund no Unsplash

Utilizar erros customizados pode deixar seu código mais compreensível e organizado, pois adiciona uma "descrição" para determinadas situações que podem ocorrer. No artigo de hoje vamos ver como criar e tratar erros customizados na linguagem Swift.

 Sumário

  • Criação
  • Tratamento de Exceção
  • Considerações

Criação

Primeiro, precisamos pensar em um contexto para criar nossos erros. Vamos supor que existe um serviço que consome uma API que fornece dados sobre filmes, e iremos tratar os possíveis erros. Os erros mais comuns são:

  • Recurso não encontrado(404)
  • Proibido(403)
  • Erro interno(500)
  •  Serviço Indisponível(503)

Os números associados aos erros são conhecidos como "Código de Status HTTP"(HTTP Status Code).

No trecho de código abaixo, iremos criar nossos erros customizados:

Email image

Usamos uma estrutura do tipo `enum` para definir o conjunto de erros que temos. Para dar continuidade, iremos supor que nosso serviço dispara exceções com os tipos definidos acima quando os respectivos códigos de status HTTP são recebidos.

Tratamento de Exceção

Agora que já temos um conjunto definido de erros, vamos ver como tratar nossas exceções. A linguagem Swift usa, para tratamento de exceções, uma estrutura conhecida como do-try-catch, que é escrita da seguinte forma:

Tratamento de exceção convencional
Tratamento de exceção convencional

Adequando o código acima para nosso cenário do serviço de filmes, e supondo que o serviço já está implementado, teríamos o seguinte:

Tratamento de exceção de uma requisição
Tratamento de exceção de uma requisição

Podemos ir um pouco além do que já vimos. A estrutura do-try-catch permite que tratemos diferentes tipos de exceções, como se fosse um switch-case, da seguinte forma:

Tratamento de exceções de uma requisição com erros customizados
Tratamento de exceções de uma requisição com erros customizados

Com a estrutura acima, conseguimos tratar alguns dos erros mais comuns que podem ocorrer ao fazer uma requisição a um servidor. Vale destacar que não necessariamente essa é a melhor abordagem, mas ela é um bom exemplo de como tratar erros customizados usando a linguagem Swift.

Considerações

Caso você tenha interesse em descobrir mais sobre tratamento de exceções em Swift, você pode ler a documentação. Espero que essa explicação tenha te ajudado!

Gostou deste artigo? Me siga para mais conteúdos como esse!

Minhas redes sociais:

Twitter | Instagram | Youtube

Até a próxima!👋🏽