Padrões de escrita de software

Assim como o estilo de um escritor é essencial para o seu trabalho, padrões de código significam muito no desenvolvimento de software.

De antemão devemos separar o que é estilo de código do que é padrão de código. O estilo versa sobre o modo como o que é escrito aparecerá na tela. Seu foco é aumentar a legibilidade e tornar a compreensão do software mais fácil para outros desenvolvedores, mas de uma forma visual. Nesse tipo de padronização podemos definir qual será a identação utilizada (tabs ou espaços? quantos espaços?), como ficarão dispostos os blocos de código (chaves em uma linha própria? na mesma linha?),  se a nossa linha terá alguma limitação de tamanho (muito comum por permitir que o código seja lido em diversos editores), convenções de nomenclatura (funções, classes, métodos, variavéis) e etc.

Mas além dessas convenções de apresentação do código a definição de um padrão vai um pouco mais além. Ela cobre, além das questões descritas no estilo, situações importantes como princípios, práticas de programação, isto é, como programar. O que retornar em funções para que todas sejam consistentes dentro de um projeto, para quando um novo desenvolvedor for utilizar uma nova função já ter uma idéia do que ela pode retornar e como utilizá-la. O padrão também fornece um porto seguro para dúvidas de como fazer determinadas coisas.

A definição de um padrão em uma empresa não precisa ser feita de uma forma totalitária ou coercitiva, a inclusão dos desenvolvedores nesse processo e a realização de forma incremental faz com que essa adoção seja vista menos como algo imposto e mais como algo que o desenvolvedor ajudou a construir.

Um bom ponto de partida é pegar alguma padrão já existente, seja de empresas que o disponibilizam,  de frameworks, ou de linguagens e discutir cada ponto para ir fazendo o seu próprio. A definição de um padrão é um processo contínuo, muitas vezes há um refinamento e mudanças podem ocorrer, principalmente nesse momento de definição.

Após o padrão ser definido há de se tomar atenção para que ele não vire uma sugestão de como desenvolver e sim um padrão de fato. Para isso devemos sempre inspecionar os artefatos que estão sendo desenvolvidos e se eles aderem ao padrão. Existem ferramentas que fazem esse trabalho, cada uma específica para determinada linguagens, levando como input um arquivo que contém a definição individual do seu padrão e verificando códigos para ver se o padrão está sendo seguido.

Aqui na ARQABS nós começamos esse processo, já trazendo nossas experiências individuais para o processo de definição. Quando temos muitos desenvolvedores envolvidos, a criação desse padrão passa a ser fundamental para que diversas pessoas possam olhar e entender rapidamente códigos que elas não escreveram.

E você já trabalhou em algum lugar com padrões bem definidos? Acha que isso engessa ou ajuda o processo de desenvolvimento?

 

Esta entrada foi publicada em Blog. Adicione o link permanente aos seus favoritos.

Os comentários estão encerrados.