Quando usar funções de multiplos retornos e quando usar objetos como retorno?
Quando usar funções de multiplos retornos e quando usar objetos como retorno?
Olá Lucas, tudo bem?
Sua pergunta é muito pertinente e é um ponto que muitos desenvolvedores Go se questionam. A escolha entre usar funções com múltiplos retornos ou retornar um objeto depende muito do contexto e do que você quer expressar em seu código.
No exemplo que você compartilhou, a função devolveCidadeEPopulacao()
retorna três valores: uma string, um inteiro e um booleano. Isso é muito útil quando os valores retornados são independentes uns dos outros ou quando não faz sentido agrupá-los em uma estrutura.
Por exemplo, neste caso, a cidade, a população e a informação se é capital ou não são informações distintas e não necessariamente relacionadas entre si. Portanto, faz sentido retorná-las como valores separados.
No entanto, se você estivesse trabalhando com um conjunto de valores que são logicamente agrupados juntos, seria mais apropriado retornar um objeto.
Por exemplo, se você tivesse uma função que retorna as dimensões de uma caixa, poderia ser mais apropriado retornar um objeto Box
com propriedades height
, width
e depth
, em vez de retornar três valores separados. Isso porque essas três dimensões estão todas relacionadas e formam um conceito único (a caixa).
Em resumo, a escolha entre usar funções com múltiplos retornos ou retornar um objeto depende do que faz mais sentido no contexto do seu código. Espero ter ajudado e bons estudos!