quarta-feira, 28 de novembro de 2012

Dicas para melhorar a qualidade do seu código

1. Mantenha o nome dos métodos o mais curto possível;

Os métodos quais estejam longos demais ao ponto que seja necessário utilizar a rolagem da tela necessitam de maior concentração e provavelmente o programador tenha dificuldades em ver o todo. De 5 a 20 linhas é um bom tamanho para na maioria dos casos.

2. Nem cogite a possibilidade de utilizar a mesma variável para mais de um propósito;

uma variável deve ser utilizar para apenas um propósito. Ao transformar seu comportamento com o modificador "final", podemos ajudar o compilador a otimizar o código, bem como deixar claro que o seu valor não vai mudar. É uma boa prática que deixa o código mais legível.

3. Procure nomear métodos e variáveis de forma clara e objetiva (anti-burro);

Qualquer um deve ser capaz de entender o código enquanto estiver olhando para ele. Evite ao máximo usar abreviações.

4. Declare a variável o mais próximo possível de onde serão utilizadas;

Normalmente ao fazer algum trabalho manual, posicionamos as ferramentas o mais próximo possível de nós! O mesmo deve acontecer com uma variável, para que não se perca o contexto de sua utilização em mais longos (com aproximadamente 20 linhas).

5. Não utilize números mágicos;

prefira sempre criar constantes ao comparar um valor variável com outro constante. Nada pior do que se deparar com o seguinte código durante a resolução de um bug:
va < 100
Acredito que seria mais fácil caso a linha acima fosse escrita da seguinte forma:
velocidadeAtual < VELOCIDADE_MAXIMA_PERMITIDA
6. Respeite as características da linguagem que esteja utilizando;

Digamos que você seja um programador Java que esteja aprendendo Ruby. Procure entender como fazer algo na nova linguagem, ao invés de tentar "portar" seu código escrito em Java. Normalmente a mesma coisa é feita de forma diferente em cada linguagem, conforme o exemplo a abaixo

em java:
for (int i = 0; i &lt; 5; i++) {

   System.out.println("Hello world!");

}

portado para o Ruby:
for i in (0..5)

   puts "Hello world!"

end
Como deveria ser em Ruby:
5.times { puts "Hello world!"}
7. Não vá contra os padrões de codificação;

Muitas linguagens possuem padrões de codificação, sendo a mais conhecida, a do Java. Quebrar quaisquer regras deste padrão só pode ser feita caso exista, realmente, uma boa razão para tal. Não o faça por simplesmente não gostar de algo.

8. Não otimize código antes da hora;

Em primeiro lugar, escreva código bem legível e totalmente coberto por testes unitários. Não se preocupe caso não seja executado na velocidade desejada. Faça o "refactory" a medida for necessário. Se realmente for necessária qualquer otimização, em primeiro lugar ache o ponto correto, para tanto, use ferramentas "Profiler". Evite resolver problemas que não existem.

9. Sempre faça o "refactory" seu código após testá-lo;

Uma forma de melhorar a qualidade do código e pelo "refactoring", após a bateria de testes unitários. Utilize as melhores práticas de TDD (Desenvolvimento Orientado a Testes) durante o ciclo de desenvolvimento de uma funcionalidade. Assim que o código passe em todos os testes, melhore seu código e o deixe o mais legível possível, sempre executado toda a bateria de testes para assegurar que nada quebrou durante o processo.

10. não seja bloqueado pelo "overdesign";

Padrões de Desenho (Design Patterns) devem ser utilizados para simplificar o desenho da solução, não significa que podem ser utilizados em todos os lugares e em todas as situações. Entenda primeiro a necessidade, construa a solução utilizando as melhores práticas de TDD e aí sim, melhorar aplicando o padrão correto, quando possível.

11. aprenda algo novo com prototipação.

Programação envolve o aprendizado de coisas novas. Quando se aprende uma nova biblioteca ou linguagem, geralmente surge a vontade e jogar fora todo o código antigo e aí sim, escrever tudo novo do zero. Definitivamente não é uma bom a fazer.

Adicionar a nova biblioteca ou linguagem a uma aplicação já existente pode causar o mesmo problema. Normalmente não é bom trocar todas as funções escritas em Javascript pelo JQuery, enquanto você ainda está aprendendo como ele funciona.

A melhor forma é criar projetos de exemplo, onde serão resolvidos os mesmos problemas com as novas bibliotecas ou linguagens. Estude, crie um protótipo e quando tiver a real noção do que pode ou o que não pode ser feito com elas. Daí sim, as utilize nos seus projetos.

Recomendo fortemente a leitura dos livros Code Complete, e Clean Code, cujos autores Steve McConnell do Robert C. Martin respectivamente.

Até a próxima! =]

Nenhum comentário: