Skip to content

Commit

Permalink
added thing_08 in pt_br
Browse files Browse the repository at this point in the history
  • Loading branch information
Dickson Souza authored and Dickson Souza committed Feb 10, 2024
1 parent 1551e68 commit a30defc
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 1 deletion.
2 changes: 1 addition & 1 deletion pt_br/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
1. [A beleza está na simplicidade](thing_05/README.md)
1. [Antes que você refatore](thing_06/README.md)
1. [Esteja ciente da sua parte no todo](thing_07/README.md)
1. [The Boy Scout Rule](thing_08/README.md)
1. [A regra do escoteiro](thing_08/README.md)
1. [Check Your Code First before Looking to Blame Others](thing_09/README.md)
1. [Choose Your Tools with Care](thing_10/README.md)
1. [Code in the Language of the Domain](thing_11/README.md)
Expand Down
15 changes: 15 additions & 0 deletions pt_br/thing_08/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# A regra do escoteiro

Os escoteiros tem uma regra: "Sempre deixe o acampamento mais limpo do que encontrou." Se você encontrar sujeira no chão, limpe independentemente de quem causou a sujeira. Você melhora o ambiente intencionalmente para o próximo grupo de pessoas que forem acampar. Na verdade a forma original dessa regra, escrita por Robert Stephenson Smyth Baden-Powell, o pai do escoterismo, era "Tente deixar esse mundo um pouco melhor do que encontrou".

O que aconteceria se adotássemos uma regra similar em nossos códigos: "Sempre comite um módulo mais limpo que quando você começou a mexer." Não importa quem foi o autor original, o que aconteceria se sempre fizéssemos algum esforço, mesmo que pequeno, para melhorar o módulo. Qual seria o resultado?

Penso que se todos nós seguíssemos essa regra simples, seria o fim da deterioração inevitável dos nossos sistemas de software. Pelo contrário, nossos sistemas iriam melhorar gradualmente à medida que o tempo passasse. Veríamos *times* cuidando do sistema como um todo, ao invés de apenas indíviduos se preocupando com sua pequena parte individual.

Não penso que essa é uma regra muito difícil. Você não precisa fazer todo módulo perfeito antes de comitar. Você precisa apenas fazê-lo *um pouco melhor* do que quando começou. Claro, isso significa que qualquer código que *adicione* a um módulo deve ser limpo. Isso também significa que você limpará ao menos uma outra coisa antes de comitar novamente o módulo. Você pode simplesmente melhorar o nome de uma variáve, ou dividir uma grande funcão em duas funções menores. Você pode quebrar uma dependência circular, ou adicionar uma interface para desacoplar a política do detalhe.

Francamente, isso parece como senso comum para mim - como lavar as mãos após usar o banheiro ou colocar o seu lixo na lixeira ao invés de jogar no chão. O ato de deixar uma bagunça no código deveria ser considerado como socialmente inaceitável assim como é o ato de *jogar lixo no chão*. Deveria ser algo que *nunca é feito*.

Mas é ainda mais do que isso. Cuidar do seu próprio código é uma coisa. Cuidar do código do time é outra completamente diferente. Membros de times ajudam uns aos outros, e limpam as bagunças uns dos outros. Eles seguem a regra do escoteiro porque isso é bom para todos e não só para eles mesmos.

Por [Robert C. Martin (a.k.a. Uncle Bob)](http://programmer.97things.oreilly.com/wiki/index.php/Uncle_Bob)

0 comments on commit a30defc

Please sign in to comment.