Palavras-chave: C#, CSharp, enum, declaração, validação, framework
Uma das boas práticas de programação em C# é o uso do enum. Ele serve para substituirmos constantes nomeadas que são relacionadas mas ficam “perdidas” no código.
//Declaração do enum public enum ImageAlign { None, Left, Right } public void MeuMetodo(ImageAlign imageAlign) { }
Apenas temos que ter o cuidado de validar o tipo passado como parâmetro, pois o “cliente” pode usar nosso método assim:
MeuMetodo((ImageAlign)1)
Para validar o valor do enum passado como parâmetro para um método use:
public void MeuMetodo(ImageAlign imageAlign) { if(!Enum.IsDefined(typeof(ImageAlign), imageAlign)) throw new ArgumentException(); //.... }
Roberto,
É interessante ver o processo de verificação do tipo do objeto.
Mas discordo que isso tenha que ser feito, ter o cuidado de validar
o parâmetro passado.
Se tivermos que verificar todo tipo de entrada de dados porque o cara
(cliente) pode fazer um “cast” estamos perdido.
O cara que faz o “cast” é o responsável em garantir que ele está certo,
pois o “cast” é como se o programador estivesse falando:
— Ei compilador esquece que tipo é esse, manda esta variável com
este tipo aqui “(ImageAlign)1”.
No mais só. Belo trabalho vocês estão fazendo aqui.