26 abril 2010

Estrutura de decisão -- Switch.. case

Esssa estrutura de decição nos ajuda bastante quando temos, por exemplo, muitos if... else. Com essa estrutura o nosso código fica mais fácil de entender, veja um exemplo:


Bom nosso exemplo será feito em uma cosole aplication. Você pode adaptar esse exemplo para uma aplicação Windows Forms, sem nenhum problema.


Abra o Visual Studio, clique File ---> New ---> Project


Crie um projeto do tipo Console Aplication e clique em OK.

class Program
{
             static void Main(string[] args)
              {


               Console.WriteLine("Escolha quantos copos de café você deseja tomar: ")
               string s = Console.ReadLine();
               int num = int.Parse(s);
               switch (num)
               {
                case 1:
                Console.WriteLine("Você toma pouco café... :)");
                break;

                case 2:
                Console.WriteLine("Você tá com sono hein... :/");
                break;


                case 3:
                Console.WriteLine("Poxa você gosta mesmo de café... :0");
                break;


                default:
                Console.WriteLine("Digite um quantidade entre 1 a 3");
                break;


                 }
}

Até o próximo post...

E finalmente é lançado o Visual Studio 2010

Bom galera dia 12 de abril foi realizado um evento no qual finalmente foi lançado o Visual Studio 2010, feito totalmente na tecnologia wpf ele trá diversas novidades que você poderá conferir nesses vídeos gravados por Renato Hadad para o portal Msdn.



http://msdn.microsoft.com/pt-br/vstudio/ff625264.aspx

http://msdn.microsoft.com/pt-br/vstudio/ff625266.aspx
http://msdn.microsoft.com/pt-br/vstudio/ff625268.aspx
http://msdn.microsoft.com/pt-br/vstudio/ff625269.aspx
http://msdn.microsoft.com/pt-br/vstudio/ff625270.aspx
http://msdn.microsoft.com/pt-br/vstudio/ff625271.aspx

Vale lembrar que o VS2010 também possui versões express, aquelas versões de grátis para estudantes e iniciantes na tecnologia. Tem até uma versão só pra desenvolvimento de aplicações para Windows Phone. è muito legal. Os links para download são:
 
Visual C# Express:
Visual Web Developer
Visual Studio 2010 Express for Windows Phone CTP
 
Até o próximo post...

12 abril 2010

PROMOÇÂO - Eu quero ser um MCP!

Você sempre quis ter uma certificaçlão Microsoft não é mesmo? Pois o BLOG Programacao pode te dar um Voucher para você fazer a prova de certificação com até 50% de desconto e mais 2ª chance.

Pra ganhar é simples. Basta ser um seguidor do BLOG Programacao e mandar um email para(blogprogramacao@hotmail.com) dizendo que você quer concorrer a 4 Vouchers que serão sorteados dia 29 de abril. Quando eu estiver no ROAD SHOW em BH!


Corra não perca essa chance. Que outro blog faz isso pra você?

Programacao Orientada a Objetos - Herança

Bom galera agora que já vimos dois alicerces da POO (abstração e o encapsulamento) chegou a vez da Herança.
Do MSDN: "Herança pode ser definida como a capacidade de uma classe herdar atributos e comportamento de uma outra classe."

Quando vamos ao shopping comprar um notebook vemos que existem diversos modelos, um mais top que o outro e mais caro também. Tem notebook branco, tem note da tela grande ou pequena, uns com câmera, outros a tela gira... Cada vez que um novo note é criado não é necessário começar do zero, reinventando tudo desde o chipset, até ... a tela touch. Diversos conceitos do notebook, já foram criados, testados e encpsulados em objetos e documentados para que posteriormente novos notebooks pudesses ser montados com bastante tranquildade. Caso queira montar um novo modelo de notebook basta que se herde algumas características já conhecidas de modelos já documentados. No próximo post mostrarei um exemplo em C# de Heranca.

Até o próximo post...

22 março 2010

Participe da Copa de Talentos Microsoft!

Chegou a copa de Talentos Microsoft a competição que todo mundo esperava. Clique no link abaixo e confira! Eu estou participando e você, vai ficar parado? Mande um email para : (blogprogramacao@hotmail.com) que eu te passo um convite. Como eu já disse não fique parado!

Até o próximo post...

16 março 2010

Instruções condicionais - IF

A partir de agora veremos como criar funções que nos permitem controlar o fluxo de nossas aplicações, em vez de executar todo o código que escrevemos. Mas antes disso imagine a seguinte situação. Todos os dias quando você vai para o trabalho você levanta 6:00h, toma banho, se arruma, toma o café, e depois vai para o trabalho as 6:45h para começar a trabalhar as 7:00h. Beleza isso é uma seqüência que é feita por você, todos os dias de segunda a sexta, porque você se planejou para isso e dessa forma cada minuto de atraso faz diferença...

Mas... e se você levantasse mais tarde uns 10 minutinhos? Obvio você chegaria mais tarde a não ser que um dos itens acima você deixasse de fazer. Porque se você levantasse mais tarde e não deixasse de cumprir um dos itens acima a resposta é única: Atraso na chegada ao trabalho.

Mas, se você levantasse mais tarde, porém deixasse de tomar o café, você talvez chegaria a tempo.

Bom no C# os controles de fluxo são uma forma até de otimizar seu código. Já pensou se todo o código fosse executado? E se você quisesse que determinada ação acontecesse a partir de um clique do botão? A partir de uma condição predefinida por você ou quem imaginando uma situação, em o usuário pode fazer determinada ação e em seguida a resposta de seu software a essa ação (quase um try-catch que veremos em outro post).

A seguir vou mostrar os controles de fluxo que ajudam seu código a ficar até mais fácil de entender, são eles: comando IF, comando SWITCH (esse será apresentado em outro post).

Comando IF

Veja a sintaxe:

A sintaxe, é bem simples, diz que se o botão for pressionado a luz ascenderá senão, se o botão NÃO for pressionado a luz não ascenderá. O controle de fluxo If pelo que você viu é bastante intuitivo. Veja sua estrutura no C#:

Quando um comando tiver mais de uma condição devemos, ou seja, mais de uma linha, devemos declará-los entre chaves {}

Podemos também declara o IF sozinho sem a declaração else. Por exemplo:

Vamos fazer um exemplo para fixar ainda mais esses conceitos.

Crie um novo projeto no Visual Studio:
Adicione ao formulário:
- 1 TextBox
- 3 Label
- 1 Button

A idéia desse exemplo é mostrar a quantidade de caractereres que o usuário digitar no TextBox. Para isso dê dois cliques no Button e adicione o código:

private void button1_Click(object sender, EventArgs e)

{
      string contador;
      contador = textBox1.Text;
      if (contador == "")
             label1.Text = "Vazio";
      else if (contador.Length < 10)
             label2.Text = "Menor que 10";
      else if (contador.Length < 20)
            label3.Text = "Menor que 20";
}

Aperte F5 e você vai ver que dependendo do texto que você digitar no textbox os labels exibirão a quantidade digitada.

Não há limite de quantidade no uso do else que podemos usar com o if. No exemplo anterior declaramos uma variável contador do tipo string. Em seguida atribuímos o TextBox a essa variável, dessa forma ela irá receber todo valor digitado no TextBox. Depois inicia-se a instrução condicional. Se o valor digitado for igual a vazio o Label1 irá receber “Vazio”. Senão, se o valor for menor que 10 caracterers o Label 2 irá exibir “Menor que 10”. Senão se o valor digitado for menor que 20 caracters uma mensagem será exibida.

É isso... até o próximo post...

Livro do mês - Vale a pena ler...

Esse mês eu recomendo aos interessados em aprender C# o e-book Programando com C# e Visual Studio .Net 2005 de Herbert Moroni. Eu li e gostei muito veja os tópico apresentados no e-book:

- Criar uma aplicação completa do começo ao fim com acesso a banco de dados.
-  Utilizar o Visual Studio 2005 para melhorar a sua produtividade
- Conhecer o ADO.NET
-  Aprender sobre o objeto Connection
-  Aprender a criar strings de conexão
-  Armazenar e recuperar strings de conexão de um arquivo de configuração
-  Conhecer o connection pooling
-  Conhecer o modelo desconectado do banco de dados
-  Aprender a utilizar o objeto DataSet com dados de um bando de dados ou arquivo XML
-  Aprender a escrever um arquivo XML utilizando o DataSet
-  Utilizar o objeto DataAdapter
-  Utilizar DataSets tipados
-  Utilizar TableAdapters
-  Utilizar objeto Connection para executar comando SQL.
-  Utilizar o objeto DataReader
-  Utilizar parâmetros nas suas consultas SQL
-  Utilizar e criar Stored Procedures facilmente utilizando o Visual Studio
-  Tratar erros em conexão com o banco de dados
-  Utilizar transações

Esse e-book pode ser comprado na loja do portal Linha de código nesse link:
http://www.linhadecodigo.com.br/EBook.aspx?id=2962

Boa leitura!

Até o próximo post...

11 março 2010

Treinamentos Online é no Inovation Lab do MSDN

Já pensou estudar diversas tecnologias, pra variar de graça, e com qualidade é claro. No portal do Inovation Lab, eu acho que você vai encontrar o que você precisa. Com treinamentos bons, eu já vi, você com certeza vai aprender bastante coisa. Vale a pena ascessar...



Quer mais sites para você estudar? Mande um email para blogprogramacao@hotmail.com

Até o próximos post..

10 março 2010

Programacao Orientada a Objetos - Parte 1.3 - Encapsulamento

Da internet: “Encapsulamento vem de encapsular, o que em programação orientada a objetos significa separar o programa em partes, as mais isoladas possíveis. A idéia é tornar o software mais flexível, fácil de modificar e de criar novas implementações”. (Fonte: Wikipedia.org).

Dessa forma, podemos voltar a abstração com o seguinte exemplo: "O seu computador, imagine se para ligá-lo, mas em uma situação em que o pc já estivesse todo montado lógico, você ligaria o cabo de energia do estabilizador na tomada. Depois liga o estabilizador, liga o pc, espera carregar o sistema operacional, quando ele carregar, digita a senha e por aí vai..

Bastaria dizer que você ligaria o seu computador, que qualquer um iria entender facilmente o que você iria fazer.

Se fóssemos explicar como é o funcionamento de um pc de uma forma bem aprofundada, provavelmente muitas pessoas iriam desistir de usa-lo. Uma pessoa saber, por exemplo que os dados ficam no HD, que se o cooler está girando é porque ele está ajudando a resfriar sua máquina, entre outros, já é o suficiente. Até porque a maior parte dos detalhes de um HD está dentro dele mesmo, mas nesse caso o HD em questão está dentro do seu gabinete e normalmente um usuário comum não conhece muito bem como é um gabinete internamente. Ou seja, tudo isso, os detalhes de um HD ou como é dentro de um gabinete são informações que estão encapsuladas dentro de cada peça, por exemplo o HD. Um usuário não sabe como é o seu HD internamente, mas sabe pelo menos, para o que ele serve, o que ele não sabe, as informações técnicas, de como é dentro da peça, estão encapsuladas dentro do mesmo. Até porque, um usuário comum não irá ter ascesso a um HD internamente para ver o seu funcionamento.

Resumindo: a Abstração resumi um cenário complexo em termos simples, o Encapsulamento esconde os informações mais complexas que normalmente você não irá acessar e assim escondem detalhes mais técnicos de seu funcionamento que de certa forma poderiam inibir você de usar aquele objeto. Imagine se você tivesse que saber qual célula de seu notebook está com carga a cada vez que você fosse usar? Difícil não é?

No próximo post da série falarei de Herança. Confira!

Até o próximo post... 

08 março 2010

Operadores Relacionais no C#


Para ver melhor entender esse exemplo em ação abra o Visual Studio crie um novo projeto Windows Application em C#. Adicione ao formulário 1 Button e 6 Label.

Dê dois cliques no botão e adicione o seguinte código:

private void button2_Click(object sender, EventArgs e)



{
   int n1 = 10, n2=20, n3=30, n4=10;

   // O numero 10 é igual a 10
   label1.Text = "O numero " + n1.ToString() + " é == a " + n4.ToString();
   // O numero 10 é diferente de 20
   label2.Text = "O numero " + n1.ToString() + " é != de " + n2.ToString();
   // O numero 10 é menor que 20
   label3.Text = "O numero " + n1.ToString() + " é < que " + n2.ToString();
   // O numero 30 é maio que 20 e 10
   label4.Text = "O numero " + n3.ToString() + " é > que " + n1.ToString() + " e " + n2.ToString();
   // O numero 20 é menor ou igual a 30
   label5.Text = "O numero " + n2.ToString() + " é <= a " + n3.ToString();
   // O numero 30 é maior ou igual a 20
   label6.Text = "O numero " + n3.ToString() + " é >= a " + n1.ToString();
}
Aperte F5 e veja como vai ficar.





É um exemplo bem simples mas não existe muita difuculdade quanto aos operadores relacionais.

Até o próximo post...