Descubra como parâmetros nomeados podem ajudar a manter seus métodos/funções mais organizados.
O que são parâmetros nomeados ? | ||
Grosso modo, pode-se dizer que esse padrão nada mais é do que uma maneira de dar nome aos bois. Porém, apenas algumas linguagens suportam esse padrão nativamente. Para entendermos melhor de início eu vou utilizar o Ruby como exemplo e, mais para frente, vou te mostrar como fazer o mesmo utilizando o Javascript. Então vamos lá. | ||
Imagine que você tem um método ou função que recebe dois parâmetros, nome e sobrenome. Usando Ruby ficaria mais ou menos assim: | ||
Até aí, tudo bem, mas imagine que o(a) dev que criou essa função não definiu o nome como sendo o primeiro parâmetro e, sim, o segundo. Ao utilizarmos essa função veríamos que seu resultado não é o que esperávamos e, somente após identificarmos esse bug, mudaríamos a forma como chamamos a função em questão. | ||
Utilizando parâmetros nomeados, não temos esse problema, porque fica implícito qual será o valor para cada parâmetro e não importa em que ordem os parâmetros nomeados aparecem. Contanto que eles estejam rotulados corretamente, sempre teremos o mesmo resultado. | ||
Vejamos novamente outro exemplo em Ruby, agora utilizando parâmetros nomeados. | ||
Veja que, mesmo invertendo a ordem, nós tivemos o mesmo resultado. Massa né? | ||
Beleza, mas como fazemos isso no Javascript ? | ||
Bom, nativamente falando, o nosso querido Javascript não suporta parâmetros nomeados, porém existe uma malandragem para resolver esse problema. Basicamente, precisamos apenas passar um objeto literal como argumento para a nossa função e, aplicando a desestruturação, teremos o mesmo resultado de outras linguagens. | ||
Outra coisa que podemos fazer também é declarar valores padrão. | ||
Conclusão | ||
Após essa explicação, você ainda pode estar se questionando “Por que eu deveria usar parâmetros nomeados?”. Então, vamos aos motivos: | ||
| ||
Ficou com alguma dúvida sobre parâmetros nomeados ou tem algo para compartilhar a respeito? Por favor, não deixe de comentar, estamos aqui para aprendermos e evoluirmos juntos! | ||
Me siga nas redes sociais: | ||