José Roberto Madureira Junior
Adaní Cusin Sacilotti
Adriana Rodrigues
Reginaldo Sacilotti
Introdução ao C# com o
Microsoft Visual Studio
Community 2015
Primeira Edição
São Paulo
2016
Sumário
1 INTRODUÇÃO AO C# ....................................................................... 1
1.1 PREPARAÇÃO DO AMBIENTE DE DESENVOLVIMENTO ........ 1
1.2 EXECUTANDO OS PROGRAMAS ............................................. 3
2 INICIANDO O DESENVOLVIMENTO COM C# ................................. 9
2.1 DELIMITADORES ....................................................................... 9
2.2 SAÍDA DE DADOS .................................................................... 10
2.3 ENTRADA DE DADOS .............................................................. 10
2.4 COMENTÁRIOS ........................................................................ 12
2.5 OPERADORES ......................................................................... 12
2.6 VARIÁVEIS ............................................................................... 13
2.7 EXERCÍCIOS RESOLVIDOS - VARIÁVEIS E OPERADORES . 15
3 ESTRUTURAS DE CONTROLE CONDICIONAL ............................ 19
3.1 OPERADORES RELACIONAIS E LÓGICOS ............................ 19
3.2 IF ... ELSE ................................................................................. 20
3.3 SWITCH ...CASE....................................................................... 21
3.4 EXERCÍCIOS RESOLVIDOS - ESTRUTURAS DE CONTROLE CONDICIONAL ................................................................................. 22
4 ESTRUTURAS DE CONTROLE REPETIÇÃO ................................ 29
4.1 WHILE ....................................................................................... 29
4.2 DO ... WHILE ............................................................................. 29
4.3 FOR ........................................................................................... 30
4.4 EXERCÍCIOS RESOLVIDOS - ESTRUTURAS DE CONTROLE REPETIÇÃO ..................................................................................... 31
5 MANIPULANDO ARRAYS ............................................................... 37
5.1 ARRAY ...................................................................................... 37
5.2 FOREACH ................................................................................. 38
5.3 EXERCÍCIOS RESOLVIDOS - MANIPULANDO ARRAYS ....... 39
6 MÉTODOS DEFINIDOS PELO USUÁRIO ....................................... 45
6.1 MÉTODOS ................................................................................ 45
6.2 EXERCÍCIOS RESOLVIDOS - FUNÇÕES DEFINIDAS PELO USUÁRIO ......................................................................................... 46
7 MÉTODOS INTERNOS ................................................................... 49
7.1 MÉTODOS INTERNOS DO C# ................................................. 49
7.2 MÉTODOS PARA MANIPULANDO DE STRINGS .................... 49
7.3 FUNÇÕES PARA MANIPULAÇÃO DE ARRAYS ...................... 51
7.4 FUNÇÕES MATEMÁTICAS ...................................................... 52
7.5 EXERCÍCIOS RESOLVIDOS - FUNÇÕES INTERNAS ............. 52
8 RECEBENDO DADOS COM FORMULÁRIOS ................................ 57
8.1 CRIANDO UMA APLICAÇÃO NO WINDOWS FORM ............... 57
8.2 RECEBENDO INFORMAÇÕES ................................................ 62
8.3 EXERCÍCIOS RESOLVIDOS - RECEBENDO DADOS COM FORMULÁRIOS ................................................................................ 64
9 MANIPULAÇÃO DE ARQUIVOS TEXTO ........................................ 67
9.1 ESCRITA DE ARQUIVOS TEXTO ............................................ 67
9.2 LEITURA DE ARQUIVO TEXTO ............................................... 68
9.3 EXERCÍCIOS RESOLVIDOS - MANIPULAÇÃO DE ARQUIVOS TEXTO .............................................................................................. 70
10 TRATAMENTO DE ERROS ............................................................. 73
10.1 TRATANDO ERROS EM C# ..................................................... 73
10.2 EXERCÍCIOS RESOLVIDOS - TRATAMENTO DE ERROS ..... 74
1
1 INTRODUÇÃO AO C#
O C# é uma linguagem de programação criada para o
desenvolvimento de uma variedade de aplicações que executam
sobre o NET Framework. Permite o desenvolvimento rápido de
aplicativos, pois é uma linguagem simples, poderosa, fortemente
tipada (declarações obrigatórias dos tipos de variáveis) e orientada a
objeto.
O desenvolvimento do livro foi baseado no C# do Visual
Studio 2015 Community. No site oficial da Microsoft
(https://msdn.microsoft.com) estão disponíveis documentações e
recursos interessantes para o aprendizado da linguagem.
Serão expostos conceitos e aplicações práticas através de
exercícios para o desenvolvimento de projetos. Esperamos que ao
final deste livro, possamos ter contribuído para ampliar os
conhecimentos do leitor nesta fascinante linguagem de
programação.
1.1 PREPARAÇÃO DO AMBIENTE DE DESENVOLVIMENTO
O ambiente de desenvolvimento do C# está disponível no
pacote de instalação do Visual Studio 2015 Community. A
ferramenta, tem o objetivo de agilizar o desenvolvimento dos
programas, reconhecer erros de sintaxe e auxiliar no
desenvolvimento ágil, com auto preenchimento de comandos e
funções.
2
Para executar uma aplicação no C#, o código é compilado e
armazenado em disco como um arquivo executável. O arquivo
gerado é intermediário e denominado Common Intermediate
Language (CIL). Para a execução, ele deve ser carregado e
interpretado pela máquina virtual, Common Language Runtime
(CLR), que tem por finalidade tomar as ações específicas a fim de
executar o código de maneira independente, sem a necessidade da
ferramenta de desenvolvimento.
A função do CLR, é a compilação just in time (JIT), que
consiste em converter o CIL em instruções de máquina. O CLR
oferece outros serviços como a coleta de lixo automática, tratamento
de exceções e gerenciamento de recursos a serem utilizados no
processo.
Para o acesso e manipulação de informações em banco de
dados, o C# se utiliza da própria ferramenta de conexão do Visual
Studio, desde que o client do Sistema Gerenciador de Banco de
Dados (SGBD), esteja instalado na máquina e reconhecido pela
ferramenta, ou via ODBC (Open Database Connectivity), ferramenta
de conexão a banco de dados disponível no Windows.
Nos exemplos e exercícios desenvolvidos neste livro, é feito o
uso do Visual Studio Community 2015, que pode ser baixado no
endereço https://www.visualstudio.com/ clicando no link “Baixe o
Community 2015”, conforme mostrado na Figura 1.
3
Figura 1- Página de download do Visual Studio
1.2 EXECUTANDO OS PROGRAMAS
Após o download do Visual Studio, você poderá personalizar
a instalação, escolhendo uma ou mais workload (carga de trabalho),
com recursos disponíveis que você poderá escolher para utilização
da linguagem de programação ou plataforma de sua preferência.
Observe que a seção Resumo será atualizada com a inclusão dos
componentes opcionais selecionados. Clique em Instalar e você verá
uma tela de status de preparação do Visual Studio Community 2015,
conforme apresentado na Figura 2.
4
Figura 2 - Preparação da instalação do Visual Studio Community 2015
Na sequência é apresentada uma tela de instruções finais
com serviços personalizados, oferendo a opção de inscrever-se (ou
não), ao clicar no botão Sign in (Figura 3).
5
Figura 3 – Apresentação de serviços personalizados
É possível também alterar as configurações de
desenvolvimento e esquema de cores conforme Figura 4. Após a
seleção clique em Start Visual Studio para abrir a ferramenta.
6
Figura 4 – Tela de configuração
Um projeto do Visual Studio é uma coleção de arquivos e
recursos que são compilados em um arquivo executável (exe, dll ou
appx). O Visual Studio usa o conceito de solução, quando se cria um
projeto, automaticamente é criada uma solução e a ela
posteriormente, pode-se adicionar mais projetos.
Um modelo de projeto é uma coleção de arquivos de código e
definições de configuração que você configura rapidamente para
criar um aplicativo específico.
7
O Visual Studio vem com muitos modelos padrão de projetos,
caso queira, você pode criar os seus próprios modelos. Depois de
criar ou abrir um projeto (Figura 5), você pode começar a escrever
seu código nos arquivos fornecidos ou em novos arquivos
adicionados.
Figura 5 – Tela de início dos projetos
Em um novo projeto é preciso selecionar primeiramente a
linguagem de programação Visual C#, para plataforma Windows.
Utilizaremos o tipo de projeto para aplicação console. Para isto,
basta clicar em Console Application. Digitar o nome (Name) do
projeto, que será o mesmo nome da solução (Solution Name).
Indicar o local (Location) para seu projeto ser gravado. Deixar
selecionada a opção Create directory for solution, permitindo a
criação de pastas para que sua solução fique organizada.
8
Após a digitação do código, vá ao menu “Arquivo” e no item
“Salvar como”, o arquivo será salvo com o nome digitado em Name
dentro da pasta criada e indicada em Location.
9
2 INICIANDO O DESENVOLVIMENTO COM C#
Agora que conhecemos um pouco mais do C#, temos o
ambiente de desenvolvimento instalado, vamos iniciar os primeiros
passos na linguagem.
A Linguagem C# é sensitive case, ou seja, faz a diferença de
letras minúsculas e maiúsculas.
2.1 DELIMITADORES
Para delimitar o código escrito em C#, utilizamos static void
Main (string[ ] args), que é o cabeçalho do método principal de um
projeto. Desta forma, serão executados os comandos em sequência
lógica que estiverem escritos a partir do início do desenvolvimento
deste método, delimitados por chaves “{ }”, conforme o exemplo a
seguir:
static void Main(string[] args)
{
Console.Write(“Olá!!! Bem Vindos...”);
Console.ReadKey();
}
Outro delimitador que observaremos no trecho de código é o
ponto e vírgula, que delimita o final de uma linha de código.
10
2.2 SAÍDA DE DADOS
A saída de dados é utilizada para exibir uma informação ou
solicitar uma entrada de dados, ou seja, informar e expor
informações para o usuário. O método Console.Write(); é o
responsável por apresentar informações quando executamos nosso
projeto. Console.WriteLine(); pula uma linha após a exibição de
uma informação.
O método Console.ReadKey(); é o responsável por pausar a
execução do programa, usado para permitir a leitura do que foi
escrito na tela do computador.
2.3 ENTRADA DE DADOS
A entrada de dados é utilizada para receber uma informação do
usuário e irá armazená-la em uma variável. O método
Console.Read(); é o responsável por ler estas informações quando
executamos nosso projeto. Console.ReadLine(); pula uma linha
após a leitura de uma informação.
Toda informação capturada sempre será do tipo string.
Exemplo:
string Variável = Console.ReadLine();
Podemos usar o “\n” para pular linha, antes e/ou depois que for
exibida a mensagem. Exemplo:
Console.WriteLine(“\n “***Informações
confifenciais***”\n”);
11
Conforme já vimos anteriormente, toda a informação capturada
pelo Console.ReadLine() é reconhecida como uma string. Portanto,
para que a informação seja armazenada em uma variável de outro
tipo (diferente de string), temos que aplicar a conversão de tipo
adequada a cada necessidade.
Exemplo de conversão:
int n = int.Parse(Console.ReadLine()); // Conversão
de string para int
ou
int n = Convert.ToInt32(Console.ReadLine());
Mais alguns exemplos de conversões
double V = double.Parse(Console.ReadLine());
//Conversão de string para double
ou
double V = Convert.ToDouble(Console.ReadLine());
bool R = bool.Parse(Console.ReadLine());
//Conversão de string para boolean
ou
bool R = Convert.ToBoolean(Console.ReadLine());
char L = char.Parse(Console.ReadLine());
//Conversão de string para char
ou