segunda-feira, 28 de maio de 2007

Não seja presunçoso - Não escreva código presunçoso

Um olá especial a todos.

Se o título pareceu arrogante, peço desculpas. Como será mostrado ao longo do post a idéia é exatamente o contrário.

Vamos começar com uma frase forte: não escreva código presunçoso.

O que é um código presunçoso? Quando o código presume alguma coisa ele é presunçoso xD.

Vamos mostrar na prática:


class Exemplo {

public double divisao(int numerador, int denominador) {
return (numerador / denominador);
}

}


Uma classe normal, com um método normal. Agora vamos responder ao evento click de um botão:


private void btnDividir_Click(object sender, EventArgs e) {
Exemplo exemplo = new Exemplo();
int numerador = (int) txtNumerador.Text;
int denominador = (int) txtDenominador.Text;
double resultado = exemplo.divisao(numerador, denominador);
}



Se fizermos alguns testes eles vão funcionar com certeza. É só não ...
- Preenchermos o denominador como zero
- Preenchermos qualquer campo com valor não numérico

Ah Felipe, aí é só fazer uma lo-gi-ca-zi-nha de validação. Exatamente! Nem é tão difícil assim. É só uma questão de condicionamento.

Às vezes dá muito trabalho fazer aquela validação aqui, aquele teste ali, e o que a gente tem no final é divisão por zero, acesso a registros quando o recordset está vazio, access violation, etc, etc, etc...

Quem trabalha com linguagens de script na web então... que trabalho... Imagina fazer validações no cliente (javascript) e no servidor (PHP, ASP.NET, Delphi, etc)...

Dá trabalho mas tem que ser feito. E, se não for feito antes vai ter que ser feito depois (de um banco cheio de inconsistências hehe).

Novamente digo que a minha idéia não é nem ser arrogante nem dar uma de 'perfeito'. Eu também escrevo esta recomendação para mim mesmo e acho que, exatamente por isso, é legal ter este lembrete para todos nós. Boa semana a todos e até a próxima!

Nenhum comentário:

Postar um comentário

 
BlogBlogs.Com.Br