image

Acesse bootcamps ilimitados e +650 cursos pra sempre

70
%OFF
Article image
Ramon Modesto
Ramon Modesto25/10/2023 06:17
Compartilhe
Luizalabs - Back-end com Python - 2º EdiçãoRecomendados para vocêLuizalabs - Back-end com Python - 2º Edição

Código limpo

  • #Arquitetura de Sistemas

Um código trabalhoso de ler é difícil de manter, criar novas funcionalidades e de escalar. Abaixo será abordado alguns tópicos que podem ajudar você e na maioria das vezes são hábitos fáceis de entender que lá na frente economizará tempo. Então vamos lá.

TDD (Test Driven Development)

image

TDD é um método no qual você cria softwares inicialmente por testes. Isso é útil porque ajuda você a criar funções mais limpas e simples, evitando vícios e auxiliando a pensar como um método será criado posteriormente. Seguem algumas de suas etapas:

  • Criamos testes que gere uma falha
  • Elaboramos nosso método
  • Fazemos nosso teste passar
  • Refatoramos nosso código eliminando a redundância

Dessa forma, você terá uma ideia muito melhor da ação esperada da funcionalidade, garantindo que, no decorrer do seu projeto, tenha o mesmo resultado esperado caso seja necessário modificá-lo.

Crie funções simples

image

Essa é umas das coisas que fazem a diferença na qualidade do seu código. Métodos que realizam várias coisas é um sinal de que há algo a ser feito, onde é melhor parar e observar como podemos dividir essa função em funções mais simples. Tome cuidado que o inverso também pode ocorrer, uma vez que criar várias funções pode acarretar em um obstáculo maior, fazendo com que você se perca facilmente em um código muito segmentado. Então, se seu código se repete muito é melhor simplificá-lo.

Funções simples realizam uma única tarefa e possui poucos argumentos. Métodos com até dois argumentos facilitam na realização de testes, evitando que eles fiquem muito verbosos e os deixando melhor para executá-los. Funções únicas melhoram a legibilidade do seu código e as tornam fácil de manter e dar manutenibilidade. Claro que isso não é uma regra a ser seguida, mas com isso em mente, nos auxiliará na sua criação.

Crie nomes melhores

image

Muitas vezes na correria do dia a dia não damos muita importância para esse assunto. Nomes de variáveis e funções que revelam o seu propósito ajudará a você e o seu colega que lerá o seu código no futuro. Acredite, até mesmo você esquecerá o que aquela variável ou função faz. Isso te economizará tempo, já que você talvez não precisará debugar o seu código.

Nomes que revelam a sua intenção são melhores para um melhor entendimento e evitar ambiguidade do seu significado. Evitar contrações de palavras também é uma boa escolha, uma vez que isso pode confundir você mais tarde.

Imutabilidade

image

Usar essa técnica é muito vantajoso e possui alguns benefícios como a identificação de mudanças. Evitar que seu código seja mutável, como evitar a alteração de um objeto ou array diretamente, reduz a complexidade da criação de uma nova funcionalidade e tornar fácil de identificar comportamentos estranhos em seu código.

A melhor forma de fazer isso é criar uma cópia de propriedades de um objeto por exemplo, criar funções que retornam uma cópia de um valor também é uma ótima dica.

Conclusão

Tudo que foi mencionado acima entra em um conceito no qual deve ser um hábito de todo programador, a refatoração. Manter o seu código organizado e fácil de ler te auxiliará a construir um software mais robusto e dar manutenibilidade. Espero que tenham gostado e dicas são bem vindas!

Fontes:

https://www.devmedia.com.br/test-driven-development-tdd-simples-e-pratico/18533

https://medium.com/clarityai-engineering/clean-code-a-practical-approach-896546435235

https://pt-br.reactjs.org/

Instrutores projeto estágio CWI Level 1

Compartilhe
Recomendados para você
Almaviva - Back-end com Java & QA
Luizalabs - Back-end com Python - 2º Edição
TOTVS - Fundamentos de Engenharia de Dados e Machine Learning
Comentários (1)
Osvaldecir Viana
Osvaldecir Viana - 25/10/2023 09:10

Muito bom seu artigo.

Recomendados para vocêLuizalabs - Back-end com Python - 2º Edição