As regras de programação de Rob Pike são essenciais para desenvolvedores que desejam otimizar seus códigos de forma eficaz. A primeira regra enfatiza a imprevisibilidade de onde um programa realmente gastará seu tempo. "Bottlenecks ocorrem em lugares surpreendentes", alerta Pike, sugerindo que não se deve tentar adivinhar onde aplicar otimizações até que se tenha a certeza de onde está o problema.
Na sequência, a segunda regra destaca a importância da medição. "Não ajuste para velocidade antes de medir", diz Pike, enfatizando que as otimizações só devem ocorrer após a identificação de uma parte do código que realmente compromete o desempenho em comparação com o restante.
Pike também critica o uso de algoritmos complexos, como indicado em sua terceira regra. Ele observa que algoritmos sofisticados tendem a ser lentos quando o valor de n é pequeno, e geralmente n é pequeno. Portanto, a simplicidade deve prevalecer até que haja certeza de que n será frequentemente grande.
A quarta regra de Pike complementa a anterior, afirmando que algoritmos complexos são mais suscetíveis a erros e mais difíceis de implementar. Ele defende a utilização de algoritmos e estruturas de dados simples, que são mais eficazes e menos propensos a falhas.
Por fim, a quinta regra é clara: "Os dados dominam". A escolha correta de estruturas de dados e uma boa organização geralmente tornam os algoritmos evidentes. Esta ideia já havia sido mencionada por Fred Brooks em "The Mythical Man-Month", que resumiu a essência dessa regra como "escreva um código simples que utilize objetos inteligentes".
As regras de Pike são uma reafirmação de princípios clássicos da programação, como a famosa máxima de Tony Hoare sobre a otimização prematura, e refletem a filosofia de design KISS, que é sobre manter as coisas simples. Ken Thompson também reitera a importância da força bruta em casos de dúvida, reafirmando a relevância das regras 3 e 4.
Confira os últimos vídeos publicados no canal