Durante meu percurso na carreira de TI, uma das minhas maiores preocupações era a de criar códigos com qualidade. E para mim qualidade envolvia tudo, deste atender aos requisitos de negócios, requisitos técnicos, performance e muitos outros. Com isto eu não poderia deixar de me preocupar com as melhores práticas de programação, pois meu objetivo principal era garantir a vida útil do sistema que eu estava escrevendo e também evitar me tornar “pai do sistema”.

É realmente péssimo ser “pai do sistema”, pois isto significa que só você (ou mesmo nem você) consegue entendê-lo, pois a lógica pode estar confusa ou complexa demais. O código pode estar mal documentado, o código pode não ser intuitivo, entre diversos outros motivos.

Ao longo dos anos aprendi com muitas pessoas o que devo e também o que não devo fazer. Vi também muitas pessoas fazerem coisas que nunca deveriam, pois se tornariam “pais do sistema” e nunca mais se livrariam de dar manutenção no código-fonte.

Eu sempre digo que é preciso ter em mente que programar com qualidade é mais do que criar sistemas que executam métodos e trazem o resultado esperado. Programar com qualidade é fazer isto, e também garantindo que o sistema foi escrito da melhor forma possível, que será simples efetuar manutenções e evoluções nele, que a performance será boa e que o sistema seja facilmente expansível e escalável.

Abaixo, através de minha vivência eu elenco os pontos que considero mais críticos para um código-fonte com boa qualidade.

Nota: Neste artigo estou tratando de programação .Net, e todos os exemplos são escritos em C#.


 

Lista de Boas práticas em programação .Net

 

1.     Declare classes utilizando Pascal case

public static class Logger
{
    ...
}

 

2.     Declare métodos utilizando Pascal case

public static void GravarLog(string textoLog)
{
    ...
}
 

3.      Declare propriedades utilizando Pascal case

public string MensagemLog
{
     get { return this.mensagemLog; }
     set { this.mensagemLog = value;}
public string MensagemLog
{
     get { return this.mensagemLog; }
     set { thisiv style="background-color:#ffffff;">}