A importância das boas práticas de desenvolvimento no mundo corporativo

POR ONDE PODEMOS COMEÇAR?

A criação de uma boa funcionalidade começa com a escrita de código de alta qualidade. É necessário tomar medidas para tornar seu código gerenciável, eficiente e escalável desde os estágios iniciais do desenvolvimento. Isso ajuda a garantir um bom desempenho, reduz as chances de problemas e simplifica o processo de depuração. Neste post iremos detalhar algumas das principais dicas de como evitar problemas em seu código.

 

O que está em jogo e quando um erro ocorre?

Às vezes, com o avanço que tivemos nos últimos anos das facilidades de deploy e a modernização dos recursos, como o PAAS (Platform-As-a-Service) por exemplo, o desenvolvedor pode ser induzido a simplificar demais assuntos que devem ser levados à sério, sempre! Mesmo sendo rápido e até mesmo muitas vezes fácil, modificar um código diretamente no ambiente produtivo, carregar uma migração de dados de uma planilha em Excel ou até mesmo um script de update de registros diretamente no banco de dados representam um enorme risco.

Nas grandes corporações, existem muitas vezes operações que contemplam um tempo de execução ou de atendimento em contrato, podendo gerar multas no caso de descumprimento considerando valores extremamente altos, como por exemplo: tempo de fabricação de produtos, tempo de entrega de mercadorias, tempo de execução de um serviço de manutenção, tempo de atendimento ao consumidor final, entre outros. Um simples erro de desenvolvimento pode gerar um impacto direto e interromper estes serviços, resultando em grandes prejuízos financeiros.

Nunca é demais ter precauções nestes momentos, seguindo os procedimentos necessários, utilizando os ambientes e steps corretos de desenvolvimento, gerando backups e realizando conferências de valores anteriores e posteriores à ação exercida no ambiente que for alterado.

Recomendações de boas práticas de desenvolvimento.

• Facilite a leitura do código – lembre-se de que outras pessoas poderão trabalhar com ele no futuro.

• Comente seu código – Os comentários devem ser bem escritos e claros.

• Use espaços em branco – Use linhas e espaços vazios para tornar o código mais legível. Quanto mais fácil é ler o código, mais fácil é identificar e corrigir problemas.

• Keep-it-simple – Lembre-se de que desenvolvedores menos experientes podem trabalhar com seu código no futuro. Torne a manutenção o mais fácil possível.

• Crie componentes modulares pequenos – Divida seu código em classes ou funções especializadas.

• Construa funções reutilizáveis – Se você ver a mesma lógica ou semelhante repetida em um processo, considere criar uma função especializada. Isso melhora a qualidade do código e facilita a sua manutenção.

• Use Nomes significativos para variáveis e funções – Nomes significativos para funções e variáveis indicam melhor para os leitores a finalidade do código.

• Use variáveis para armazenar resultados de funções – Quando possível, use uma variável descritiva para armazenar um valor e consulte a variável em vez de chamar a mesma função repetidamente.

• Verifique se o valor existe antes de utilizá-lo – Para evitar resultados imprevisíveis e mensagens de aviso, verifique se variáveis e campos têm um valor antes de usá-los.

• Evite consultas complexas ao banco de dados – Reduza a complexidade das consultas quando possível e evite repetir chamadas ao banco de dados utilizando objetos pré-carregados na memória.

• Codifique em estágios – Não tente escrever centenas de linhas de código de uma só vez.

• Não use valores hard-coded – Evite usar valores Hard-Coded em scripts, pois eles podem levar a resultados imprevisíveis e podem ser difíceis de rastrear mais tarde.

Utilize uma Sandbox para seus testes.

Experimentar novas idéias ou conceitos de codificação em um ambiente de desenvolvimento pode levar a resultados confusos mais tarde, fazendo com que este ambiente possa se comportar de maneira diferente dos outros, dificultando a verificação de defeitos e correções.

Se observarmos um sistema como o ServiceNow, é possível ter uma instância de desenvolvimento pessoal e realizar seus testes em um ambiente isolado. Deste modo, quando você entender como implementar o novo conceito em uma sandbox, construa a solução no ambiente de desenvolvimento real.

Davi Augusto Ramos

Solution Architect and ITBM Specialist at nuvolax