7 erros que todo programador deve evitar ao desenvolver software

7 erros que todo Programador deve evitar

Programação de computadores é uma tarefa que pode ser altamente complexa, cheia de detalhes minuciosos, e altamente propensa a erros. E, no geral, a maioria dos problemas associados a software se refere a código mal escrito, que não segue normas ou padrões, e que foi criado sem o devido cuidado. Em outras palavras, boa parte dos bugs em software são causados pelos próprios desenvolvedores – evidentemente, sem intenção.

Por isso é essencial prestar a máxima atenção ao trabalho realizado quando um software ou sistema de softwares é construído. Muitos problemas podem ser evitados se algumas regras simples forem seguidas desde o início do ciclo de vida de desenvolvimento de um software.

A seguir listamos sete erros comuns que são cometidos com frequência por programadores, e que podem – e devem –  ser evitados desde o início.

Erros cometidos por programadores

Erros comuns ao desenvolver software

1. Não planejar antes de começar a codificar.

Os programas devem ser planejados de antemão – é para isso que serve a fase de análise. A coleta de requisitos, avaliação, pseudocódigos, fluxogramas, são todas ferramentas e técnicas que auxiliam no planejamento de como o software deverá ser desenvolvido na sequência, e que impactam significativamente todo o processo.

Software mal planejado significa, invariavelmente, software que precisará ser reescrito futuramente – e o impacto disso se dá no tempo de desenvolvimento estendido, custo do produto aumentado e, muito comumente, na (má) imagem passada pelo desenvolvedor ou empresa que desenvolve o software aos clientes.

2. Não escrever código limpo.

O código deve ser legível, seguir boas práticas de programação e de padrões de projetos (design patterns), ser organizado e bem-formatado.

Isso inclui usar uma convenção de nomes adequada para variáveis, métodos, eventos, funções, etc.. Os nomes devem expressar a intenção do elemento representado, serem inequívocos, claros e o mais sucintos possível.

Além disso, é importante documentar o código por meio de comentários (mas sem exagero – não escreva um livro dentro do código-fonte!).

Como disse Martin Fowler, autor e desenvolvedor que ajudou a criar o Manifesto para o Desenvolvimento de Software Ágil:

“Qualquer idiota pode escrever um código que um computador consegue entender. Bons programadores escrevem código que os humanos conseguem entender.”

A qualidade do código é sempre fundamental.

Dica de leitura sobre o assunto (link afiliado):

3. Reinventar a roda.

É sempre tentador e desafiador criar nossos próprios algoritmos e bibliotecas, como algoritmos de busca, ordenação, bibliotecas de cálculos e funções variadas. Mas isso, normalmente, é altamente trabalhoso, toma um grande tempo de nosso trabalho, e pode acarretar a inserção de erros variados nos programas que estamos criando. Obviamente precisamos escrever código para nossos projetos, mas se algumas das funcionalidades que necessitamos já existem, na forma de código já pronto, talvez seja uma melhor opção usá-los.

Tente, sempre que possível, usar as bibliotecas e classes escritas por terceiros, pois no geral trata-se de código escrito e otimizado por um grupo de profissionais, cuja probabilidade de apresentar erros é baixa, e assim você poupa um tempo enorme ao não precisar escrever código que já existe pronto e testado.

Além, é claro, da alta probabilidade de seu próprio código apresentar uma série de falhas e bugs.

Reuso de código é a regra!

4. Não realizar testes e não pensar em manipulação de erros no código.

Se o programa funciona para você, não significa que irá funcionar sempre para o usuário – talvez haja alguma falha oculta, ou uma maneira específica de usar a aplicação que traga à tona problemas não previstos. Melhor detectar, tratar e eliminar essas possíveis falhas antes de entregar o produto ao usuário, para evitar problemas mais graves e custosos.

Para tal você deve lançar mão de ao menos duas técnicas: a manipulação de exceções (erros) dentro do código, e a realização de testes de software, dos mais variados tipos (unitários, de integração, etc.).

Pode ser trabalhoso (e aparentemente custoso) escrever rotinas de testes ou de manipulação de exceções, mas muito menos do que corrigir bugs em software já finalizado e em produção (além de ser, no final das contas, mais barato).

5. Somente copiar e adaptar código, sem entender como ele funciona

É extremamente comum, em desenvolvimento de software, que o programador procure trechos de código e algoritmos em sites de busca (como o famoso Stack Overflow), e use os códigos encontrados em sua aplicação, tentando adaptá-los.

Até aí, nenhum problema – afinal, isso é uma espécie de “reuso de código” por meio de compartilhamento. O problema surge quando o programador não procura realmente entender como o código opera – quais as ideias empregadas, técnicas específicas da linguagem, como a lógica foi organizada. Isso impede que o profissional aprenda com o exemplo e seja capaz de, futuramente, escrever por si próprio código sem a necessidade de “copiar e colar”.

Use os códigos compartilhados na Internet à vontade, mas procure aprender como eles foram feitos para que você também seja capaz de escrevê-los – afinal, para que os algoritmos compartilhados existam é necessário que alguém saiba como fazê-los – e esse alguém pode ser você, em algum momento.

6. Não efetuar backup de seus arquivos-fonte.

O backup é de crucial importância, e isso se aplica a quem trabalha com desenvolvimento, e também a quem trabalha com tecnologia em geral, e mesmo a quem não trabalha diretamente com tecnologia, mas usa computadores em suas atividades.

Além de backups (local/nuvem), aprenda a usar sistemas de controle de versão, como o Git ou SVN (Github é um ótimo começo).

Por exemplo, assista ao Minicurso de Git da Bóson Treinamentos em Tecnologia no YouTube para uma introdução ao assunto de controle de versão:

Leitura recomendada (link afiliado):

E por último, mas não menos importante:

7. Não praticar todos os dias (ou quase todos).

Programação é uma atividade prática, que envolve o emprego de uma série de conhecimentos, ferramentas e técnicas, muitas vezes de alta complexidade, e somente a prática constante e focada pode garantir seu aprendizado adequado e o desenvolvimento satisfatório de código funcional, em tempo hábil, e com poucos erros.

Além disso, como em tecnologia em geral o aprendizado é constante, devido à velocidade na qual as tecnologias são desenvolvidas e atualizadas, a necessidade de prática de forma sistemática se torna ainda mais evidente.

Como disse o famoso cientista da computação Alan Turing:

“Programação é uma habilidade adquirida pela prática e pelo exemplo, e não por meio de livros.”

Conclusão

Evitar que erros ocorram durante o desenvolvimento de software é uma tarefa desafiadora, mas há muitas formas de minimizarmos problemas, desde que sejam seguidas algumas recomendações simples, como as apresentadas neste artigo.

 

Sobre Fábio dos Reis (1376 Artigos)
Fábio dos Reis trabalha com tecnologias variadas há mais de 25 anos, tendo atuado nos campos de Eletrônica, Telecomunicações, Programação de Computadores e Redes de Dados. É um entusiasta de Unix, Linux e Open Source em geral, adora Eletrônica e Música, e estuda idiomas, além de ministrar cursos e palestras sobre diversas tecnologias em São Paulo e outras cidades do Brasil.
Contato: Website

Escreva um comentário

Seu e-mail não será divulgado


*