Visual Studio .NET - Usando C# . Por que não ?

Primeiro quero dizer que sou um programador Visual Basic e que a curiosidade me levou ao interesse pela nova linguagem C# (C Sharp) (Já ouviu falar em Java !!) . Assim , vamos estar aprendendo juntos nos artigos que irei publicar a seguir. Vamos começar com uma pequena introdução e terminar com algo mais leve para quem esta começando...

Bem , vamos lá . Se você já conhece bem os conceitos sobre a programação orientada a objetos pode pular esta parte. Caso contrário recomendo que você acompanhe atentamente pois é o básico para compreender como funciona a linguagem C#. Os conceitos estão ilustrados com código C#. Se não entender o código não se desespere já que o objetivo desta introdução é que você compreenda os conceitos e não o código.

A POO é algo mais que o "último grito de programação". Não se trata de uma moda senão de um modo de trabalho mais natural que permite que você se concentre em solucionar o problema que tens para resolver em lugar de ter que andar pensando em como fazer para resolver problemas secundários. Se já utilizou qualquer linguagem não orientada a objetos sabe sobre o que estou falando , 90% do código estava voltado para reservar espaço para memoria, desenhar janelas , monitorar a resolução , etc.., e, os outros 10% para resolver o problema propriamente dito. A POO permite que você se dedique a escrever realmente o código útil , ou seja, o código que vai resolver o problema . Vejamos um exemplo:

Imagina que tenhas que fazer um sistema para gerenciar uma base de dados pessoais. Como seria feito na maneira tradicional ? Ha, Ha, fácil :

  1. Recolher os dados , abrir o arquivo , definir o tamanho do registro, definir o tamanho e tipo de cada campo , por cada campo em seu lugar , guardar o registro em seu lugar no arquivo e fechar o arquivo.
  2. Para realizar uma busca : abrir o arquivo, buscar os dados , fechar o arquivo e apresentar os resultados.
  3. Para fazer alterações : recolhe os novos dados, volta a abrir o arquivo , guarda os dados modificados no registro correspondente e fecha o arquivo.

Trabalhoso , não é mesmo ? Percebeu que a maior parte do código tratava de tarefas secundárias ? e como seria este mesmo serviço feito pela por uma linguagem POO como C# ?

  1. Temos um objeto : a pessoa
  2. Para incluir uma informação deveremos dar os valores ao objeto e pedir que ele a guarde. Assim :
Pessoa.Nome = Pedro
Pessoa.Apelido = Pedro (outra vez)
Pessoa.Direção = a direção 
Pessoa.Guardar
  1. E para realizar uma busca como faríamos ? Apenas pediríamos ao objeto para fazer a busca. Assim
Pessoa.Buscar(Manoel)

Veja que não temos que nos preocupar como o objeto Pessoa faz o seu trabalho . Se o objeto esta bem construído e funciona , é isto que importa . Temos somente que utilizar o objeto para resolver o nosso problema. Isto é POO.

Se pensar um pouco verás que não se trata de um sistema arbitrário ou de uma invenção de um iluminado. Suponhas , como exemplo , que em lugar de escrever um programa você esta conduzindo um veículo . Quando você pisar no acelerador o que vai acontecer ? O veículo vai acelerar , é claro. Como o veículo faz com que o motor aumente o número de rotações por minuto não é a sua preocupação . Quer seja um dispositivo mecânico ou eletrônico que esta debaixo do capô do veículo para realizar este serviço pouco nos importa , mesmo que seja a última tecnologia em uso , o que interessa é que o procedimento para acelerar é pisar no acelerador , isto não vai mudar . Voltando para a programação podemos dizer que por mais que se alterem as versões dos objetos para que se tornem mais eficientes a interface será sempre a mesma de forma que a maneira de utilizar o objeto continua sendo a mesma.

Classes e Objetos

Já mostramos algumas vantagens da POO ; vamos entrar agora em mais detalhes : o que são as Classes , o que são os Objetos e qual a diferença entre eles ?

É muito fácil fazer confusão com estes dois termos. São ambos iguais ? Não , embora estejam intimamente relacionados. Para que um objeto exista deve existir uma classe , e , o oposto não é verdade. A classe seria o modelo , o esquema , no qual nos baseamos para criar o Objeto.

Vejamos o exemplo do veículo: todos eles tem um série de características comuns : o motor , rodas , volante , pedais , chassis , carroceria ; todos funcionam de maneira similar para acelerar , freiar , trocar as marchas , ascender as luzes , etc..; No entanto , cada veículo é diferente dos demais , pois , cada uma possui sua marca , modelo , cor , etc.. propriedades que os diferenciam uns dos outros.

Dizemos então que todos os veículos estão baseados em um modelo que seria a classe veículo , de forma que cada veículo é um objeto desta classe: todos compartilham a interface mas não precisam compartilhar os dados (marca , modelo , cor ); Cada um dos objetos é uma instância da classe a que pertence.

Resumindo : a Classe é algo genérico ( a idéia que todos nós temos sobre um veículo ) e o Objeto é algo mais concreto ( a ferrari do Ronaldinho , aquela Mercedes Benz). Vejamos como podemos desenhar a classe veículo usando código C#.

class veiculo

{

   public veiculo(string marca, string modelo, string cor, string numbastidor)
   {
      this.Marca=marca;
      this.Modelo=modelo;
      this.Cor=cor;
      this.NumBastidor=numbastidor;
    }
   public double Velocidade
   {
     get
         {
          return this.velocidade;
         }
   }

   protected double velocidade=0;
   public string Marca;
   public string Modelo;
   public string Cor;
   public string NumBastidor;

   public void Acelerar(double quantidade)
   {
       // aumentar as rpm , e...
       Console.WriteLine("Incrementando a velocidade em {0} km/h", quantidade);
       this.velocidade += quantidade;
   }
   public void Girar(double quantidade)
   {
      // Aquí iría o código para manobrar
      Console.WriteLine("Girando o veiculo {0} graus", quantidade);
   }

   public void Freiar(double quantidade)
   {
       // freiar o veiculo e...
       Console.WriteLine("Reduzindo a velocidade em {0} km/h", quantidade);
       this.velocidade -= quantidade;
   }
}

Gostou da teoria ? Bem vamos agora por a mão na massa...

Começando o C#

Por onde começar ?

  1. Faça o Download e instale o .NET Framework Beta 2 (a versão final já foi liberada mas não é grátis)
  2. Faça o Download do manual do C# e de uma olhada.
  3. Quer saber onde encontrar informação sobre C# ? Clique aqui !

Agora arregaçe as mangas e prepare o seu primeiro programa em C#.

Pronto ! seu programa esta pronto e funcionando !!! Agora vamos aos lembretes finais:

  1. C# é case-sensitive (distingue maiusculas de minúsculas) Assim alo é diferente de Alo. Cuidado a digitar o seu código.
  2. O código C# pode ser escrito em qualquer editor de textos
  3. O arquivo com código C# deve ser salvo com a extensão .cs
  4. C# roda na plataforma .NET , logo você precisa ter instalado o NET.SDK ou o VS.NET para compilar os programas em C#
  5. O compilador C# é o arquivo - csc.exe , que geralmente pode ser encontrado em : X:\WINDOWS\Microsoft.NET\Framework\v1.0.3705 (X é driver onde você instalou o VS.NET)

É isto ai !!! Até o próximo artigo C# .


José Carlos Macoratti