domingo, 4 de dezembro de 2011

Trabalhando com Enum em C#

Muita pessoas desconhecem o poder que um Enum possui, sem falar que as poucas pessoas que fazem uso dele, não sabem aproveitar todas as sua possibilidades.
Utilizar Enum na implementação de software server para facilitar o desenvolvimento, sem falar que com a tipagem você impede erros de programação.

Vamos a um caso básico de Enum:
Campo estado civil: Normalmente esse campo está representado diretamente como uma coluna no banco de dados, com os tipos Char, tinyInt (Falando em SqlServer), porem na implementação do sistema, não sabemos qual é o range do campo, ficamos sempre na duvida: Solteiro, Casado, Divorciado e Viuvo ou 0-Solteiro, 1-Casado, 2-Divorciado e 3-Viuvo.
Particulamente prefiro o uso de inteiros, então quando tenho que fazer campos com valores enumerados no banco sempre uso inteiros, seja para criar campos de status, estado civil etc.
Vamos a primeira implementação:
public enum EstadoCivil
{
    Solteiro = 0,
    Casado = 1,
    Divorciado = 2,
    Viuvo = 3
}
A primeira funcionalidade que fica desconhecida da maioria é o valor para cada item do Enum, quando colocamos o valor para os itens da coleção podemos recuperar fazendo uma cast simples:
Console.WriteLine("{0} - {1}"EstadoCivil.Casado.ToString(), 
(int)EstadoCivil.Casado);
ou
Console.WriteLine("{0} - {1}"EstadoCivil.Casado.ToString(), 
                  EstadoCivil.Casado.ToString("D"));

terça-feira, 6 de setembro de 2011

Dificuldades na Instalação do Ambiente de Desenvolvimento Android

Falando em Ambiente de Desenvolvimento Android, sempre encontramos problemas a configuração do mesmo. Nesse post vou mostra os problemas que tive que enfrentar na configuração Eclipse/Windows/Android-SDK.

1º Maquina virtual não encontrada

Esse problema ocorre desde versão 1.6.12, isso ocorre devido a não configuração da variável de ambiente JAVA_HOME.



quinta-feira, 10 de fevereiro de 2011

Ciclo de vida do ASP.Net

Umas das primeiras coisa que um desenvolvedor ASP.net deve saber é o caminho que uma requisição a paginas ASP.net faz. Já perdir as contas de quantas vezes fui dar suporte a desenvolvedores com problemas ao utilizar componentes Web no método Page_PreInit.
O ciclo de vida de uma pagina AspNet pode ser dividida da seguinte forma:

segunda-feira, 31 de janeiro de 2011

Bancos de Dados Embutidos

Estou trabalhando em um software de monitoração, o intuito é que esse software seja capaz de monitorar processos (serviços) instalados dentro do Park de computadores de onde eu trabalho. Contudo, levantando as necessidades (requisitos) deste software encontrei um requisito essencial para a qualidade deste software, como armazenar as informações dos processos monitorados, e mais, como guarda o histórico desse processo.

A resposta básica e direta a esse problema foi: Banco de Dados, mas existe uma premissa nesse software onde: "ele não pode depender de outros softwares", como eu vou conseguir gravar as informações/histórico do processo em banco de dados, se o banco parou?