Desenvolvimento

21 mar, 2019

Série JS é vida – Pure Functions (Funções Puras)

297 visualizações
Publicidade

Fala, galera!

Hoje vou começar uma série de artigos sobre JavaScript, e o primeiro deles é sobre um assunto muito interessante: Pure Functions, muito usado em programação funcional.

As principais vantagens:

  • Fácil manutenção
  • Fácil de testar
  • Não possui efeitos colateral

Primeiro vamos começar pelo que não é uma função pura.

São funções que manipulam estado de variáveis ocasionando, assim, efeitos colaterais quando chamadas e também podem ter um retorno variável mesmo tendo a mesma entrada.

Exemplo:

let geek = {
  nome: 'jhones',
  idade: 23
};

function impureFunction() {
  geek.idade = 30
  return geek.idade
}

impureFunction() //retorna 30
console.log(geeks) //retorna { nome: 'jhones', idade: 30 }

Como podemos ver no exemplo, a propriedade idade do objeto geek é alterada para 30, causando efeitos colaterais no objeto geek.

O que são Funções Puras?

É uma função que dada a mesma entrada, sempre retornará a mesma saída e não tem efeitos colaterais. Sendo assim, é mais fácil de testar e fazer a manutenção.

Exemplo:

function pureFunction(a,b) {
  return a + b
}

pureFunction(1,2) // retorna 3

Como no exemplo acima, a função sempre retorna o mesmo valor baseado na entrada sem manipular nenhuma variável fora.

Conclusão

Funções puras são fáceis de implementar e testar. Meu conselho é que sempre que puder, use, pois elas vão tornar seu código mais bonito, prático e simples de fazer a manutenção.

Abraço, galera! Espero que tenha sido útil.

Acompanhem os próximos artigos da série que logo serão publicados aqui no portal.