O Enum é um conceito bastante útil para algumas áreas de programação. Na verdade trata-se da abreviação de Enumeração, que na prática nada mais é do que um grupo de constantes. A grande vantagem das Enums é que elas podem expressar números através de nomes. Vou colocar um exemplo que vai deixar bem claro sua utilidade. Vamos imaginar o cenário de um pequeno jogo de batalha-naval, que tenha, para cada objeto do jogo, uma determinada pontuação. Para dar início ao exemplo, criarei um novo projeto no Visual C# Express e dentro dele uma classe chamada "Pontos".

Agora, dentro dessa classe, criarei uma Enum chamada "PontosAcertos", que definirá a pontuação referente a cada objeto do jogo.

Notem que eu atribui alguns valores para cada objeto do jogo.
Agora imaginem que num outro momento do código você queira utilizar, exibindo na tela, o valor atribuído a um
Cruzador. Para muitos a solução já deve estar mentalmente pronta, que seria:
Pontos.PontosAcertos.Cruzadores
Essa resposta faz sentido, já que acessa primeiro a Classe, depois a Enum e em seguida o valor do item desejado.
No entanto, vamos tentar exibi-la no Console do C# com o seguinte comando:
Console.WriteLine(Pontos.PontosAcertos.Cruzadores);
Vejamos o que acontece na saída:

Não era bem isso que queríamos. O que aconteceu aqui foi o seguinte: todo item de um Enum é naturalmente uma String associada a um valor e, quando não deixamos explícito que queremos exibir ou utilizar o valor, o retorno será sempre a String em si. A solução para isso é muito simples e envolve o conceito de Cast, visto no tópico anterior, vejam:

Vejamos a saída agora:

Percebam que agora foi retornado o valor associado a esse item da Enum e não mais o seu nome. O interessante é que se ao longo desse jogo fosse necessário calcular a pontuação referente ao acerto de vários Cruzadores ao mesmo tempo, nós poderíamos fazer o seguinte código:

Vejam a saída desse comando com o multiplicador:

Os enumeradores permitem grande ganho de tempo no desenvolvimento de aplicações. Imagine que você decida, no final do
desenvolvimento, alterar o valor da pontuação dos Cruzadores, de 5 para 10 pontos. Se não tivesse feito um Enum, seria
necessário procurar em todos os locais do seu código que fizessem uso dessa pontuação e substituir o 5 pelo 10.
Utilizando o Enum basta trocar em um único local e o código já estará atualizado.
Bem, os mais atentos e que já passaram pelo minicurso de Lógica podem estar se perguntando qual seria a diferença
entre o Enum e as Constantes, afinal de contas eles parecem ter o mesmo resultado prático. Se você pensou dessa forma,
parabéns, pois até aqui realmente eles não apresentam nenhuma diferença no resultado e isso significa que você está
atento, no entanto o Enum é, de fato, uma Enumeração, uma
sequência. Se não especificarmos nenhum valor aos seus itens, isso será feito automaticamente, como se
fossem índices de um vetor. Vejam na prática o que acontece quando eu removo todos os valores associados aos
itens do Enum:

Para o código de exibição, fiz uma alteração para que sejam exibidos todos os itens da Enum, deixando-o da seguinte forma:

Agora vejamos essa saída:

Percebam agora que ele atribuiu valores a cada item, de acordo com a ordem em que eles aparecem
na Enum. E, assim como os índices de um vetor, o primeiro tem valor zero.
Agora ficou claro o que diferencia uma Enum de simples Constantes.
Para encerrar o assunto Enum, vale destacar que por padrão os valores associados são do tipo int, mas também é possível usar os tipos byte, short e long
através da seguinte sintaxe:

Vale destacar que uma Enum não aceita os tipos de dados Double, Float e Char.
Bem, é isso. Essa é a Enum. No próximo tópico falarei sobre as listas.
HARDWARE
Entendendo o seu computador
O que há dentro do meu computador?
Existem alguns componentes fundamentais presentes dentro do seu computador e é muito importante que você conheça um pouco sobre eles, seja para argumentar com algum vendedor durante a compra de um novo PC ou para identificar alguma atitude desleal de algum técnico que esteja te passando um orçamento para reparo. Na seção Raio-X aqui do Contém Bits você pode conhecer e entender mais detalhadamente sobre cada componente, ou também pode clicar abaixo no componente que deseja, para conhecê-lo melhor.
Você Sabia?
Nintendo Wii
Nos primeiros oito dias após o lançamento do console Nintendo Wii foram vendidas 600 mil unidades. Isso equivale a quase um por segundo e estes incríveis números são referentes às vendas apenas nos EUA!
Final Fantasy
O famoso título Final Fantasy, da Square Enix, tem este nome exatamente porque se tratava da última esperança da empresa, que estava à beira da falência quando o lançou. Clique aqui e conheça detalhes dessa história.
Cuidados com o notebook
Utilizar seu notebook em camas, sofás ou qualquer superfície macia pode obstruir as entradas e saídas de ar, elevando a temperatura e provocando danos a diversos componentes. Utilize-o sempre sobre uma superfície rígida. Saiba mais aqui.
PC com barulho?
Excesso de barulho dentro do seu gabinete, principalmente logo que você o liga, pode ser sintoma de problemas nas ventoinhas, que podem precisar ser limpas ou trocadas. Entre em contato com um técnico de sua confiança e verifique isso o quanto antes.
Nintendo Entertainment System
O console Nintendo Entertainment System (NES), da Nintendo, detém o recorde de videogame mais clonado em todo o mundo. Já foram catalogados mais de 300 aparelhos diferentes capazes de reproduzir seus jogos! Saiba mais sobre ele aqui.
Duck Hunt
Ao completar o nível 99 do jogo Duck Hunt, para Nintendo, o jogo retorna ao primeiro nível, mas um bug impede que se acerte os patos neste recomeço. Este é um exemplo do que é chamado no mundo dos games de "Kill Screen".
Mario e seu bigode
O personagem Mario só possui bigode porque quando ele foi criado, em 1981, a resolução de tela dos equipamentos disponíveis não permitia que fosse desenhada uma boca, então os desenvolvedores fizeram o grande bigode para contornar essa limitação tecnológica.
Música tema do Blanka
Até a primeira metade dos anos 90 era bastante comum que as trilhas sonoras dos games fossem criadas por mulheres e a responsável pelas músicas do clássico Street Fighter 2 foi Yoko Shimomura. Segundo ela, o ritmo "Tararirarin" da música tema do personagem Blanka, do Brasil, veio à sua cabeça enquanto ela estava no trem a caminho da Capcom.
Recorde de patentes
A IBM detém o recorde de patentes em um único ano, atingindo a marca de 4186 registros no ano de 2008. Clique aqui e saiba mais sobre esta gigante do mundo da tecnologia.
Mortal Kombat - O Filme
O filme Mortal Kombat, inspirado no jogo de mesmo nome, faturou 23 milhões de dólares apenas no fim de semana de estreia nos EUA. Ainda sobre este título de sucesso, outra cifra que impressiona é o faturamento ao longo do primeiro ano: 1 bilhão de dólares no mundo todo.