Sabe aquela bagunça no código que começa pequena e, de repente, parece um emaranhado de fios soltos? O livro A Philosophy of Software Design, de John Ousterhout, traz 3 dicas pra evitar essa cilada:
1. Tolerância zero à complexidade
Complexidade no código é tipo mofo: começa de leve, você ignora, e quando vê, tomou conta de tudo. O autor explica que isso acontece quando pequenas mudanças alteram configurações gigantes, o código vira um labirinto e você nem sabe mais onde alterar.
Exemplo prático: imagine um sistema de pedidos onde a lógica de desconto está espalhada por vários lugares. Se precisar mudar algo, tem que caçar tudo! Uma solução? Centralizar a lógica em um único lugar para evitar esse caos.
Moral da história: não caia na armadilha do “só essa duplicaçãozinha aqui não vai fazer mal”. Ela se acumula e, quando percebe, seu código parece um filme de terror.
2. Código pequeno ≠ código melhor
Muita gente acha que dividir tudo em métodos mínimos deixa o código mais organizado. Mas essas funções sempre foram usadas juntas, separá-las só complicará a vida.
Exemplo prático: no processo de cadastro de usuário, tem métodos separados para validar, salvar no banco e mandar e-mail. Mas eles sempre andam juntos! Uma solução? Juntar tudo num único método, tornando o código mais complexo e intuitivo.
Moral da história: separar só por separar pode ser pior. O que importa é a simplicidade, e não o tamanho da função.
3. Tratamento de exceções: o vilão da complexidade
Lidar com falhas no código é essencial, mas, se feito da forma errada, pode se tornar um verdadeiro caos. O autor aponta que a maneira como os erros são tratados podem acabar gerando mais confusão do que soluções.
O dilema: você deve resolver o problema imediatamente ou simplesmente repassá-lo para quem chamou o método? A segunda alternativa pode desencadear um efeito cascata, tornando o sistema ainda mais complexo.
Moral da história: gerenciar erros com cautela evita que o código fique repleto de dúvidas do tipo “E agora? O que faço com isso?”.
Conclusão
Esse livro é um tapa na cara de quem acha que “qualquer código que funciona tá bom”. Simplicidade e organização são essenciais para um código saudável.