Design de código
Jonatha Follmer
Jonatha Follmer

(ref: https://www.freecodecamp.org/portuguese/news/clean-code-explicado-um-guia-pratico-para-iniciantes/)
Já vou iniciar essa publicação ressaltando que tudo o que está descrito aqui é embasado na ~~MINHA OPINIÃO~~, com base na minha experiência profissional e nos estudos que realizei ao longo do tempo. Esse conteúdo não representar um consenso absoluto, mas sim a forma como enxergo o tema. Por isso, convido você a compartilhar sua opinião nos comentários do LinkedIn.
Antes de entrar em todos os detalhes sobre Clean Code, é importante lembrar que adotar práticas simples como DRY, KISS e YAGNI já vai fazer uma grande diferença no dia a dia. Se cada desenvolvedor se preocupar em não repetir código desnecessariamente, em manter as coisas simples e em não tentar antecipar demais o que pode ser necessário no futuro, o impacto será imediato. Isso facilita a vida de todos na equipe e, com o tempo, torna o processo de desenvolvimento muito mais leve e colaborativo. Comece por aí, e com certeza o trabalho vai fluir bem melhor! Sei que muitas vezes você está apagando incêndios no trabalho, mas pense no coleguinha, um dia ele vai precisar fazer manutenção no seu código.
O conceito é simples: “Clean Code é um conjunto de boas práticas para escrever códigos mais legíveis, manuteníveis e eficientes. O conceito foi popularizado pelo livro Clean Code: A Handbook of Agile Software Craftsmanship, de Robert C. Martin (Uncle Bob).”
Novamente embasado na ~~MINHA OPINIÃO~~, o principio que acredito ser o coração da ideia é o: !FAÇA CÓDIGO PENSANDO NOS OUTROS DESENVOLVEDORES!. Isso significa que um código limpo não é apenas aquele que funciona, mas sim aquele que pode ser facilmente compreendido, modificado e expandido por outros desenvolvedores no futuro. Escrever código pensando nos outros envolve adotar uma nomenclatura clara, evitar complexidade desnecessária e sempre buscar a simplicidade sem comprometer a funcionalidade. Afinal, um código que só o autor entende não é um código eficiente, mas sim um problema em potencial para a equipe.
Falando de princípios, aqui estão os outros:
Usarei exemplos mesquinhos mas que minimamente acenderão as lamparinas do juízo independentemente da complexidade do seu projeto.

(ref: https://www.freecodecamp.org/news/how-to-write-clean-code-tips-for-developers/)
1️⃣ Nomes Significativos:
Princípio: Use nomes descritivos e intuitivos para variáveis, funções e classes.
❌ Código Ruim (Nomes genéricos e confusos)

✅ Código Limpo (Nomes claros e descritivos)

2️⃣ Funções Pequenas e Objetivas:
Princípio: Cada função deve fazer apenas uma coisa e fazê-la bem.
❌ Código Ruim (Função faz múltiplas coisas)

✅ Código Limpo (Funções pequenas e focadas em uma única responsabilidade)

3️⃣ Evite Comentários Desnecessários
Princípio: Prefira código autoexplicativo a comentários excessivos.
❌ Código Ruim (Comentário explicando o óbvio)

✅ Código Limpo (Código autoexplicativo, sem necessidade de comentário)

4️⃣ Evitar Código Morto
Princípio: Remova código não utilizado para evitar confusão e poluição do código.
❌ Código Ruim (Código morto presente)

✅ Código Limpo (Código antigo removido)

5️⃣ Evite Repetição (DRY - Don't Repeat Yourself)
Princípio: Evite duplicação de lógica extraindo funções reutilizáveis.
❌ Código Ruim (Duplicação de código)

✅ Código Limpo (Extração de função comum)

6️⃣ Uso Consistente de Estruturas
Princípio: Siga padrões e convenções da linguagem.
❌ Código Ruim (Mistura de estilos e convenções diferentes)

✅ Código Limpo (Padrões e convenções corretos)

7️⃣ Tratamento de Erros Elegante
Princípio: Use exceções para evitar retornos ambíguos.
❌ Código Ruim (Retorno sem significado claro)

✅ Código Limpo (Lançamento de exceções para melhor controle de fluxo)

8️⃣ Testabilidade e Modularidade
Princípio: Código deve ser fácil de testar e reutilizar.
❌ Código Ruim (Função faz chamadas diretas, difícil de testar)

✅ Código Limpo (Isolação da lógica para facilitar testes)

Design de código
Jonatha Follmer
Jonatha Follmer