Clean Code – Anotações interessantes sobre os capítulos de 4 a 7
Published: 2024-04-03 00:27:25

Oioi pessoal, tudo bem? Hoje eu trago alguns pontos que achei interessantes sobre o livro Clean Code. 

**Capítulo 4 – comentários** 

O quarto capítulo nos traz algumas boas práticas relacionadas ao uso de comentários. Em primeiro lugar, precisamos saber que comentários boa parte das vezes, são decorrentes da falha dos desenvolvedores, ao escrever o código, salvo casos em que são realmente necessários (como comentários legais) ou trazem algum benefício real. 
Alguns tipos de comentário são: informativos, sobre algo que está acontecendo; explicação de intenção, sobre algo que se espera que aconteça em determinado bloco de código; aviso de consequências, caso o bloco de código seja alterado; comentários TODO, para documentar tarefas à fazer. 
Além disso, há comentários que são maus, como comentários redundantes e comentários errôneos, comentários desconexos/distantes do código relacionado e comentários muito extensos, dificultando a compreensão do código. 

**Capítulo 5 – formatação**

O quinto capítulo aborda a importância do código bem formatado, para facilitar a leitura e compreensão do que está escrito. É importante a definição de um padrão, que deverá ser seguido ao longo de todo código. Alguns pontos que achei relevantes, foram: evitar linhas muito extensas, para evitar o scroll para o lado, evitar tabulações estranhas, como espaçar tipagem e nome de atributos, organizar chaves e quebras de linhas, definir variáveis próximas ao seu lugar de uso.

**Capítulo 6 – objetos e estruturas de dados**

O sexto capítulo traz considerações interessantes sobre objetos e estruturas de dados. [...] Esconder a implementação é sobre abstrações. Objetos: “escondem” seus dados através de abstrações e expõem funções que operam aqueles dados escondidos; Estruturas de dados: expõem seus dados e não possuem funções significativas.
Além disso, também é citada a Lei de Demeter, comumente utilizada em desenvolvimento orientado a objeto, abordando o acoplamento fraco. Alguns pontos são levados em conta, sendo eles:
•	Cada unidade deve possuir conhecimento limitado sobre as outras unidades;
•	Cada unidade se relaciona apenas com seus “amigos”, nunca com “estranhos”;
•	Apenas se relacionar com “amigos próximos”.
Em suma, objetos expõem comportamentos e escondem dados, facilitando a criação de novos objetos, sem alterar os comportamentos existentes. Isso também dificulta adicionar novos comportamentos a objetos existentes. Sendo assim, estruturas de dados são o oposto, expondo dados e não possuindo comportamentos significantes; 

**Capítulo 7 – tratamento de erros**

No sétimo capítulo, são trazidas algumas considerações sobre o tratamento de erros. A responsabilidade do desenvolvedor é garantir que, caso ocorra, não seja algo fatal e o código faça o que precisa ser feito. A seguir, alguns pontos que achei interessantes deste capítulo: Escrever primeiro os try/catches, dar um contexto para as exceções, definir classes de exceção de acordo com as necessidades de chamada, definir um fluxo “padrão”, não retornar nulo.

**Fonte**
* [Link do e-book](https://www.amazon.com.br/Robert-Martin-Clean-Collection-English-ebook/dp/B00666M59G)