Executando verificação de segurança...
7

O Principio KISS

<img src=https://branward.com/wp-content/uploads/2021/08/destacada_post_kiss-1.png>

O princípio KISS é uma regra importante no mundo da programação que nos diz para manter as coisas simples e não complicadas. O "KISS" significa "Keep It Simple, Stupid", que em português seria "Mantenha Simples, Idiota".

A ideia por trás desse princípio é que quando estamos desenvolvendo um software ou um programa, devemos fazer de forma simples, para que seja fácil de entender e não gere confusão. Vamos usar uma analogia para entender melhor:

Imagine que você está montando um quebra-cabeça, e esse quebra-cabeça tem muitas peças complicadas e difíceis de encaixar. Seria uma tarefa muito difícil e demorada, não é mesmo?

Agora, imagine que você tem outro quebra-cabeça com menos peças e elas são todas bem fáceis de encaixar. Seria muito mais rápido e divertido montá-lo, não é verdade?

O mesmo acontece na programação! Quando escrevemos um código simples, ele se torna mais fácil de entender, de corrigir erros e de trabalhar com ele no futuro. Isso também é ótimo para outras pessoas que vão ler ou trabalhar com o seu código, pois eles também vão conseguir entender rapidamente o que está acontecendo.

Aqui estão algumas dicas para aplicar o princípio KISS:

  • Evite a complexidade desnecessária: Não crie coisas complicadas só porque você pode. Sempre busque a solução mais simples e direta para o problema.

  • Use nomes claros: Dê nomes às variáveis, funções e classes que sejam fáceis de entender e que reflitam exatamente o que elas fazem.

  • Separe o código: Organize o seu código em pequenas partes que façam uma coisa de cada vez. Isso ajuda a entender cada parte separadamente e facilita a manutenção.

  • Comente o código: Escreva comentários explicativos no código, principalmente em partes mais complexas. Isso ajuda a entender o que está acontecendo e por que certas decisões foram tomadas.

  • Simplicidade é elegante: Lembre-se de que, muitas vezes, a simplicidade é a melhor solução. Não se preocupe em tornar o código muito elaborado ou sofisticado, pois isso pode trazer mais problemas do que soluções.

Seguindo o princípio KISS, você vai escrever um código mais claro, eficiente e que vai facilitar a vida de todos os envolvidos no desenvolvimento e manutenção do software. Mantenha simples e tudo vai funcionar muito melhor!

Compartilhe sua opnião, se você concorda ou não. Você é livre para se expressar!

2

Junto com o YAGNI, é dos princípios mais importantes, estão relacionados com overengineering, e frequentemente são violados, especialmente para a pessoa aderir a modinhas. Mas infelizmente ele não entra em moda.

Algumas pregam um monte de coisas para deixar o código mais claro que o deixam mais complicado, e isso está até institucionalizado, por exemplo em livros famosos.

Não deixa de ser irônico que não é nada simples manter a simplificação, por isso muita gente prefere a complicação.


Farei algo que muitos pedem para aprender a programar corretamente, gratuitamente. Para saber quando, me segue nas suas plataformas preferidas. Quase não as uso, não terá infindas notificações (links aqui).

3

Será que alguém leria um livro gratuito escrito há quase 40 anos? E ainda sobre Forth? Quase certeza que não.

Thinking Forth.

No prefácio de uma das edições está escrito:

"Programming computers can be crazy-making. Other professions give you the
luxury of seeing tangible proof of your efforts. A watchmaker can watch the
cogs and wheels; a seamstress can watch the seams come together with each
stitch. But programmers design, build, and repair the stuff of imagination,
ghostly mechanisms that escape the senses. Our work takes place not in RAM,
not in an editor, but within our own minds."

Lendo com atenção, é possível reconhecer que tudo que é dito hoje já estava lá (ok, muita coisa já havia sido escrita antes). Na realidade, eu ficaria feliz se o pessoal moderno baixasse, anotasse as dicas e olhasse as figuras. Algumas delas:

tf00.png

1

Perfeito, por isso que o livro não é famosos :D Obrigado pela postagem. Está cada dia mais difícil manter simples, por isso tem mais discurso disso do que ação.

2

Isso é muito importante, eu já vi tanta coisa lendo codigo e outras pessoas, elas complica transformando isso: Math.floor(46.75)
em isso:
46.75 | 0
~~ 46.75
46.75 << 0
e já vi isso em tutoriais

2
1

Concordo que devemos manter as coisas simples, porém como vcs lidam com o seguinte cenário? Sua esquipe é formada principalmente por devs juniores e vc iniciou um novo projeto que ainda é incerto se vai crescer ou não. Se você faz as coisas simples vc entrega rapido e maravilha, porem o tempo passa o projeto da certo e chega um monte de requisitos novos que inevitavelmente caem na mãos dos dev juniores, e ai o bicho pega pq determinados requisitos requerem uma refatoração mais elaborada para o código nao comecar a ficar um caos. Se por outro lado no início do projeto vc cria uma estrutura mais elaborada fica muito mais facil dos dev juniores apenas seguirem o modelo e criarem os novos requisitos ja usando melhores praticas.

Qual solucao adotariam para esse cenário?

1

Acho que esse cenário, parece muito com a situação que se encontra um dos meu projetos atuais, por pressão o começo do projeto foi uma bagunça, agora estamos conseguindo impor um ritmo melhor no desenvolvimento e vamos ter q refatorar varias coisas.

O pensamento que tive foi, 'antes tarde do que nunca', pois quanto antes começar a refatorar e simplificar o código, mais rápido o cenário ideal chega!

É uma dor, refazer boa parte do sistema, mas são as dores do crescimento do sistema.