O Principio KISS
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!
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).
KISS hoje é minha estratégia primordial no desenvolvimento de software.
Já passei por muitas frustrações com projetos excessivamente complexos. Seu texto sobre o KISS é excelente.
Escrevi recentemente sobre a importância da simplicidade no desenvolvimento de projetos: A Importância da Simplicidade no Desenvolvimento de Projetos
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?