DEV Community

Beatriz da Silva
Beatriz da Silva

Posted on

Dia 5 - #100DaysOfSwift

Funções

Servem pra criar blocos de código que serão usados mais de uma vez, assim reduzindo código repetido. É uma boa prática criar funções que tenham apenas uma responsabilidade.

Quando a função tem uma única expressão a palavra reservada return pode ser omitida:
Image description

É possível retornar mais de um valor numa função usando tuplas ou alguma coleção(array ou dicionário):
Image description

Swift permite que coloquemos dois nomes em cada parâmetro, sendo o primeiro de uso externo e o segundo de uso interno, permite também omitir o parâmetro na chamada da função(usando _), ambas as formas podem ser usadas pra deixar o código mais fácil de ler.
Image description

Quando temos um parâmetro que na maioria das vezes vai receber um valor específico, pra facilitar dá pra colocar um parâmetro padrão.

Throwing functions

As vezes num código algo pode dar erro, mas ser um erro mais "tranquilo", por exemplo quando um app consome dados de uma API e por algum motivo não foi possível decodificar os dados que estão sendo recebidos, nesses casos é muito útil saber que um erro aconteceu sem crashar o app, assim é possível dar um feedback visual pro usuário e deixá-lo livre pra tentar fazer outras coisas no app.

O Swift nos permite lançar erros dentro de funções, pra isso é preciso colocar a palavra throws antes do tipo de retorno da função, e dentro dela usar a palavra throw quando algo der errado e aí chamar algum erro que você criou num enum que conforma com o protocolo Error.

Pra chamar uma throwing function é preciso usar três palavras: do, try, e catch, como a linguagem nos força a usar try ao chamar uma throwing function, fica bem fácil de saber visualmente quais funções podem ou não causar erros.

Image description

Top comments (0)