Aumente sua produtividade com Node.js utilizando Arrow Functions

E aí pessoal! Belezura?

Hoje vamos falar sobre Arrow Functions, e como elas podem nos ajudar na produtividade quando trabalhamos com Node.js. Bora!

Tempos atrás, escrevi um post falando sobre expressões lambda e arrow functions, esse aqui. Lá, descrevi sobre um pacote chamado devbox-linq que foi inspirado no C# e tem várias funcionalidades que facilitam MUITO o desenvolvimento no nosso dia-a-dia. Volto novamente para falar desse pacote que passou por algumas mudanças e refatorações pra facilitar ainda mais!

Deixo aqui meus parabéns e agradecimentos ao Gustavo e o Lenon que passaram um bom tempo para refatorar e deixar esse pacote cada dia melhor 😀

O que são Arrow Functions mesmo?

As Arrow Functions vieram com o EcmaScript 6. E são basicamente uma “nova” forma de se trabalhar com funções utilizando o operador =>Pra ser bem sucinto e ir direto ao assunto, vejam um exemplo de uma função do jeito “antigo”:

E agora trabalhando com arrow functions:

Ainda podemos simplificar mais ainda assim:

Certo, agora todo mundo sabe o que são arrow functions, né? Então vamos para o próximo passo!

Como as arrow functions podem ajudar na produtividade?

Quando comecei a fazer projetos com Node.js, estava muito acostumado com os projetos em C#, e confesso que senti muita falta de uma biblioteca chamada System.Linq, pois com ela conseguimos filtrar e manipular listas. Um exemplo básico, é somar todos os elementos de um array. Com C# fica mais ou menos assim:

Outro exemplo legal para falarmos do C#, é filtrar uma lista de clientes, onde queremos apenas clientes do sexo masculino com mais de 20 anos, que ficaria mais ou menos assim:

Pra fazer com JavaScript da maneira convencional, precisaríamos fazer de algumas maneiras… Primeiro vamos ver a forma mais convencional possível:

Existe uma maneira bem melhor, utilizando o “reduce“, que fica mais ou menos assim:

Agora vamos adicionar as arrow functions junto ao reduce:

Notem, que em cada uma das abordagens escrevemos cada vez menos código. Porém, com o uso do devbox-linq o negócio fica lindo! Vejam como fica o exemplo da soma:

Não precisamos escrever quase NADA 🙂

Vejam um outro exemplo onde somamos elementos de um objeto:

Agora vejam o exemplo de filtro de clientes:

O que mais podemos fazer?

Temos várias possibilidades, vejam no exemplo abaixo um pouco do que podemos fazer:

Além disso tem várias outras funcionalidades, como “orderBy“, “select“, “skip“, “take“, dentre tantas outras.

Como eu uso?

Para utilizar é só instalar o pacote via npm dessa maneira:

npm install devbox-linq

A documentação está bem legal, e você pode encontrar ela aqui: https://www.npmjs.com/package/devbox-linq

Caso não tenha alguma funcionalidade que você precisa, é só fazer um fork e mandar um pull request que estamos de braços abertos 🙂

O link do Github é esse aqui: https://github.com/GustavoMaritan/LinqJs

Por hoje é só, qualquer dúvida ou sugestão, estou à disposição! Até mais 😀

Anúncios

2 thoughts on “Aumente sua produtividade com Node.js utilizando Arrow Functions

  1. igor de souza morais 17/04/2018 / 20:42

    Muito bom parabens

    Gostar

  2. Julio Bandeira 17/05/2018 / 00:00

    Topper demais, mão na roda

    Gostar

Deixe uma Resposta

Preencha os seus detalhes abaixo ou clique num ícone para iniciar sessão:

Logótipo da WordPress.com

Está a comentar usando a sua conta WordPress.com Terminar Sessão /  Alterar )

Google+ photo

Está a comentar usando a sua conta Google+ Terminar Sessão /  Alterar )

Imagem do Twitter

Está a comentar usando a sua conta Twitter Terminar Sessão /  Alterar )

Facebook photo

Está a comentar usando a sua conta Facebook Terminar Sessão /  Alterar )

w

Connecting to %s