A Duplicação de Código é Mais Barata do que Abstrações Erradas
A maioria dos desenvolvedores aprende o princípio DRY cedo. Do Not Repeat Yourself.
Essa regra faz sentido. Ela evita erros e economiza tempo.
Mas muitos desenvolvedores seguem essa regra de forma muito rigorosa. Eles tentam mesclar tudo em uma única função ou classe. Isso leva ao over-engineering.
Quando você força dois trechos de lógica diferentes em uma única abstração, você cria problemas. Você adiciona complexidade. Você torna o código difícil de ler.
Uma abstração errada custa mais do que um pouco de duplicação.
Se você duplicar o código, saberá exatamente onde a lógica reside. Se precisar alterar uma parte, você a altera ali.
Se você usar uma abstração ruim, terá que alterar tudo o que estiver conectado a ela. Você corre o risco de quebrar funcionalidades que não têm nada a ver com a sua tarefa atual.
Siga estas regras para se manter seguro:
- Escreva código para a tarefa em questão.
- Espere um padrão surgir três vezes antes de abstrair.
- Priorize a legibilidade em vez de economizar algumas linhas de código.
- Aceite que um pouco de duplicação é saudável.
Pare de tentar tornar cada linha de código perfeita. Foque em tornar seu código fácil de alterar.