DEV Community 👩‍💻👨‍💻

nicolasteofilo
nicolasteofilo

Posted on

KISS

Este é um conceito que pode te salvar de muito sofrimento!😀


KISS - Keep It Simple, Stupid!
Traduzindo para o português você pode pensar que este principio fala: "Mantenha simples, estupido" e não, ele não está te chamando de estúpido kkk 😂.
O entendimento que você teve ter sobre este conceitos é: "Mantenha simples e estúpido"


Agora vamos descobrir a ponto principal, que é aplicar no dia-a-dia!

Um dos ponto principais é saber como aplicar no dia-a-dia, porque não adianta nada você só saber o conceito e não aplicar nada! Então vamos aplicar, basicamente esse conceito te diz que você deve manter o seu código simples...
Primeiramente, ele não está falando para você deixar o seu código o menor possível.
Mas o que é para você fazer então?
O conceito te propõe que você deixei o seu código o mais legível possível, o mais simples possível e entendível para qualquer DEV que tiver que ler e dar manutenção naquele seu código, independente se o outro desenvolvedor for júnior, pleno, ou sênior!


Exemplo

É muito comum pelos Dev's javascript criar uma função qualquer e passar parâmetros, agora vamos ver o jeito errado(de acordo com o conceito KISS) e o jeito certo de se criar essa mesma função!


Então vamos supor que nós estamos precisando criar uma função que recebe como parâmetro uma lista de úsuarios! E a partir disso, vai fazer um .map e vai retornar o nome e idade de cada úsuario! Uma coisa bem simples para quem meche com javascript em geral!
Errado!
  function getInfo(infos) {
    return infos.map(u => ({
     name: u.name,
     age: u.age
    }))
  }
Enter fullscreen mode Exit fullscreen mode

Primeiramente, eu nomeei a função como getInfo, se eu for nesse código daqui a vários meses, eu vou saber o que a função faz somente pelo nome, acredito que não!
O parametro que eu passe info, será que daqui a um tempo sem ver esse código eu vou saber que é uma lista de usuários que eu tenho que passar ali, acredito que também não!
E ali no meu .map eu declarei u, o que que é esse u, nunca que eu vou saber kkk 😂😂!


Certo!
  function getUserNameAndAge(users) {
    return users.map(user => ({
     name: user.name,
     age: user.age
    }))
  }
Enter fullscreen mode Exit fullscreen mode

Agora sim, está bem mais fácil de saber o que cada coisa faz, começando pelo nome da função que já me diz claramente o que ela faz, pegar o nome e a idade do usuário!No parâmetro posso ver claramente que eu vou passar users, que como está no plural, remete a vários usuários!
E no .map eu deixo explicito que eu estou retornando um usuário e que desse usuário eu retorno o nome e a idade!


Conclusão

Você pode ver que eu dei um exemplo bem simples, mas que pode ocorrer muito no dia-a-dia de um desenvolvedor e isso se aplica a qualquer linguagem ou ferramente que você use, eu espero que você tenha compreendido o sentido do conceito KISS, até mais 😀


Estou deixando alguns link onde compartilho mais conteúdo além do blog aqui !

Top comments (4)

Collapse
 
lukeshiru profile image
Luke Shiru

You can make it even simpler:

const getUserNameAndAge = users =>
    users.map(({ name, age }) => ({ name, age }));
Enter fullscreen mode Exit fullscreen mode
Collapse
 
nicolasteofilo profile image
nicolasteofilo Author

Yes, thanks for the tip :)

Collapse
 
nadeemkhanrtm profile image
Nadeem Khan

Use english I cannot get it.

Collapse
 
nicolasteofilo profile image
nicolasteofilo Author

Wow, thanks for the tip, my next posts will be in English

Need a better mental model for async/await?

Check out this classic DEV post on the subject.

⭐️🎀 JavaScript Visualized: Promises & Async/Await

async await