#1 — Clean Code: O que é? Porque usar?
Clean Code é uma filosofia de desenvolvimento cuja o principal objetivo é aplicar técnicas simples que visam facilitar a escrita e leitura de um código.
“ Aprender a criar códigos limpos é uma tarefa árdua e requer mais do que o simples conhecimento dos princípios e padrões. Você deve suar a camisa; praticar sozinho e ver que cometeu erros; assistir os outros praticarem e errarem; vê-los tropeçar e refazer seus passos; Vê-los agonizar para tomar decisões e o preço que pagarão por as terem tomado da maneira errada. ”
Introdução
A nota acima foi escrita por Robert C. Martin, em seu livro: “Clean Code: A Handbook of Agile Software Craftsmanship” — na minha opinião esse livro deveria ser de leitura obrigatória para todos os programadores que se prezem.
Boa parte das informações dessa serie de artigos são baseadas neste livro. Por tanto, tá mais do que recomendado a leitura!
O que é Clean Code (código limpo)?
Clean Code é uma filosofia de desenvolvimento cuja o principal objetivo é aplicar técnicas simples que visam facilitar a escrita e leitura de um código, tornando-o de fácil compreensão e revelando a sua real intenção.
Engana-se quem pensa que a limpeza de código é algo complexo! Trocar o nome de uma variável por um melhor, converter funções grandes que fazem várias coisas para funções pequenas que fazem uma única tarefa, diminuir a complexidade do código reduzindo as regras condicionais — if — que ele possui, eliminar código duplicado e etc… Essas são algumas das coisas que podemos fazer para aplicar o conceito de clean code em nossos códigos.
Porque devo usar Clean Code?
“ Alguma vez um código ruim já lhe atrasou consideravelmente? Se você for um programador, independente de sua experiência, então já se deparou várias vezes com esse obstáculo ”
A produtividade de um programador está diretamente ligada a qualidade do código em que ele trabalha. Por isso, realizar a manutenção de um software é bem mais complicado do que desenvolver um do início. Os programadores passam a maior parte do tempo lendo e entendo o código do que programando. A proporção de leitura para escrita do código é de 10:1— Essa afirmação foi feita pelo Robert C. Martin ao analisar o histórico de atividades do seu próprio editor quando estava programando.
É impossível escrever um código sem lê-lo, constantemente lemos um código antigo quando estamos criando um novo. Por isso, escrever um código que facilite a leitura é de suma importância. Se você quiser ser um programador melhor e mais produtivo, não há como escapar, comece escrevendo um código mais limpo.
Um pouco de reflexão
“ Qualquer um consegue escrever código que um computador entende. Bons programadores escrevem código que humanos entendem” — Martin Fowler
Se escrever um código limpo nos proporciona vários benefícios, por que nós nos deparamos com inúmeros códigos ruins? Temos diversas explicações pra isso, certo?
- Os requisitos mudaram de forma expressiva;
- O cronograma é apertado;
- Estou sendo pressionado pra entregar mais rápido;
- Vou fazer funcionar o básico, depois melhoro o resto…;
- Etc…;
No livro, o autor cita que para nos tornarmos programadores melhores, precisamos ter atitudes de um profissional. Por tanto, a “culpa” de escrever um código ruim é nossa!
Como poderia essa zona ser nossa culpa?
Os gerentes e marqueteiros buscam em nós programadores as informações que precisam para fazer promessas e firmarem compromissos. Os usuários esperam que validemos as maneiras pelas quais os requisitos se encaixarão no sistema. Nossa cumplicidade no planejamento do projeto é tamanha que compartilhamos uma grande parcela da responsabilidade em caso de falhas; especialmente se estas forem em relação a um código ruim.
A maioria dos gerentes querem a verdade, mesmo que demonstrem o contrário, eles podem proteger com paixão o prazo e os requisitos, essa é a função deles. A sua é proteger o código com essa mesma paixão!
Conclusão
Conforme nós utilizamos as práticas do Clean Code, nós produzimos ou ampliamos uma habilidade citada no livro, como “sensibilidade ao código”. Este termo se refere à capacidade de visualizar um código mal escrito e imediatamente pensar em diferentes formas de limpá-lo ou refatora-lo.
Se você leu esse artigo até aqui, provavelmente você é um programador e deseja se tornar um ainda melhor!
Vou encerrando por aqui. Claro que darei prosseguimento no assunto e explicarei com exemplos a como limpar um código. Mas, isso vai ficar para o próximo artigo (só clicar no link abaixo).
Qual sua opinião? comente!