intro duo a lingua gem c sharp

Download Intro Duo a Lingua Gem c Sharp

Post on 24-Sep-2015

4 views

Category:

Documents

0 download

Embed Size (px)

DESCRIPTION

introdução a c#

TRANSCRIPT

INTRODUO A Linguagem c#Jirlan Ricardo1ObjetivoO objetivo dessa apresentao proporcionar uma noo bsica da linguagem C#.Para um melhor entendimento, recomendvel que o leitor tenha uma noo de lgica de programao ou que j tenha programado em alguma outra linguagem.Essa apresentao tem como intuito ajudar quem est comeando ou quer comear a programar em C#.2IntroduoC# foi desenvolvida pela Microsoft.Foi apresentada junto a plataforma .NET.C# uma mistura de C++ e Java.Criador: Anders Hejlsberg3Caractersticas orientada a objetos.Possui um alto nvel de abstrao.Possui coletor de lixo.Suporta tipagem dinmica e esttica.A tipagem dinmica no exige declaraes de tipos de dados (a partir da verso 3.0 do C#).A tipagem esttica exige a declarao de quais dados podero ser associados a cada varivel antes da sua utilizao.4CaractersticasC# est bastante vinculada ao framework .NETO framework .NET suporta vrias linguagens de programao.C# usa a biblioteca de classe do framework .NETO framework .NET possui mais de 4 mil classes.

5Ambiente de desenvolvimentoIrei utilizar o Windows 8Visual C# 2010 Express (gratuito)http://www.visualstudio.com/downloads/download-visual-studio-vsSe voc for aluno, poder fazer download de verses pagas do Visual Studio acessando o site:https://www.dreamspark.com

6Primeiros passosPrimeiramente crie um projeto (File -> New Project)

7Primeiros passosTecle F6 para construir a aplicao e depois tecle a combinao Ctrl + F5 para executar.

8ExplicaoCtrl + F5 no Visual C# executa sem debugging. Isso fora uma pausa no final da execuo permitindo que voc possa visualizar o resultado da execuo.

J o atalho F6 o mesmo que ir no menu Debug e depois clicar em Build Solution.

9ExplicaoAs classes so organizadas em namespaces. System um namespace.

10ExplicaoConsole uma classe do namespace System.

11ExplicaoDeclarar seus prprios namespaces pode ajudar no controle do escopo da classe e nomes de mtodos em grandes projetos.Os namespaces ajudam na manuteno de um programa!

12ExplicaoQuando voc criou um projeto em C# utilizando o Visual C#, ele j adicionou:

Voc faz referncia a um namespace utilizando a palavra reservada using.

13ExplicaoWriteLine um mtodo da classe Console. passada a string Hello World!.

14ObservaesC# case-sensitive, ou seja, diferencia letras minsculas de maisculas.Com o // possvel fazer comentrios de uma linha.Comeando com /* e fechando com */ possvel fazer comentrios de mltiplas linhas.

15Executando sem Visual C#Uma IDE como Visual C# muito importante para otimizar seu tempo pois tem uma srie de recursos interessantes.Mas voc pode executar um cdigo sem o Visual C#.Para executar, basta ter o framework .NET instalado.

16Executando sem Visual C#Como saber se eu tenho o framework .NET?Abra o Windows Explorer. Se o Windows estiver instalado na partio C, clique nela, entre na pasta Windows, depois entre na pasta Microsoft.NET, entre na pasta Framework. Dentro dessa pasta voc encontrar as verses do framework.Irei utilizar a verso 3.5, ento eu clicarei na pasta chamada v3.5.

17Executando sem Visual C#Procure pelo arquivo csc.exe. esse arquivo que compilar o programa.

18Executando sem Visual C#No irei adicionar nas variveis de ambiente. Irei chamar diretamente o csc.exe digitando o endereo completo dele. No meu caso o endereo ficou:C:\Windows\Microsoft.NET\Framework\v3.5\csc.exe

19Executando sem Visual C#Abra algum editor de sua preferncia. Irei utilizar o Notepad++. Digite o seguinte cdigo:

Salve o arquivo como HelloWorld.cs.

20Executando sem Visual C#Eu salvei o arquivo HelloWorld.cs na rea de Trabalho.Abra o cmd (prompt de comandos).Digite os seguintes comandos:cd desktopC:\Windows\Microsoft.NET\Framework\v3.5\csc.exe HelloWorld.csHelloWorld.exe

21Executando sem Visual C#

22Executando sem Visual C#Fcil no mesmo? Mas o Visual C# j faz isso para voc de forma bem mais simples!

23Obtendo dados do usurioVeja esse cdigo que obtm dados do usurio:

O mtodo ReadLine() obtm os dados.

24Obtendo dados do usurioO operador + concatena strings.

25Execuo

26AtenoNos prximos exemplos no irei colocar o namespace.Lembrando que recomendvel definir o namespace.Irei apresentar exemplos sem namespace, apenas com a classe.

27Retornando o tipo de uma varivelPrograma que retorna o tipo de uma varivel

Basta utilizar a funo GetType().

28ExecuoSystem.Single ?? Isso mesmo, float um apelido para System.Single. Cada tipo em C# tem o apelido para o tipo .NET.

29Convertendo string para inteiroConvertendo string para inteiro (int):

Basta utilizar a funo Parse().

30Exibindo vrias variveisExibindo vrias variveis:

Basta usar {0}, {1} etc. e especificar as variveis.

31Tipagem implcitaNos exemplos anteriores sempre declaramos o tipo da varivel antes de utiliz-la.A partir da verso 3.0, pode-se utilizar o conceito de tipagem implcita.Tipagem implcita: no necessrio informar o tipo da varivel.Com a tipagem implcita, o tipo da varivel definido de acordo com o valor atribudo a ela.

32Tipagem implcita - ExemploVeja um exemplo com tipagem implcita:

Perceba que eu tenho a varivel ano que inteira e a varivel nome que uma string.

33Execuo

34Obtendo uma substringPara obter uma substring, basta utilizar o mtodo Substring().

35Obtendo uma substringSubstring() : o primeiro parmetro o ndice de onde comea e o segundo a quantidade de caracteres.

36Execuo

37Tamanho de uma stringBasta utilizar o atributo Length para saber o tamanho de uma string.

38Mtodo Contains()Verifica se uma string est contida na outra. Retorna True se for verdade e False caso contrrio. A sada do programa ser True.

39Concatenando stringsBasta utilizar o mtodo Concat() da classe String.

40Retirando caracteres em brancoPara retirar do final basta utilizar o mtodo TrimEnd() e para retirar do incio basta utilizar o mtodo TrimStart().

41Dividir uma stringPara dividir uma string, pode-se utilizar o mtodo Split() passando o separador que ser usado para dividir a string.

42Dividir uma stringvet um vetor de strings. A string nome dividida por um espao em branco atravs do mtodo Split.

43Dividir uma stringO comando for um comando de repetio que ir percorrer o array vet para exibir as strings.

44Execuo

45Juntando stringsPara juntar, pode-se utilizar o mtodo Join().

46Declarando constantesBasta usar a palavra reservada constantes do tipo da varivel.Na declarao de uma constante, obrigatrio atribuir um valor a ela no momento da declarao.

47MtodosC# no suporta mtodos globais.Os mtodos so declarados e utilizados de forma semelhante a outras linguagens como C, C++ e Java.

48Mtodos - ExemploMtodo somar() retorna a soma de dois nmeros.

49Mtodos - Outra forma Mtodo somar() agora no esttico (static).

50Expresses condicionaisNo C# voc poder utilizar as expresses:ifswitchExemplo com o if:

51Expresses condicionaisExemplo com switch:

52Expresses condicionaisO switch pode ser utilizado com strings!

53Observaes sobre o switchS pode ser utilizado com os tipos primitivos.Cada case contm uma expresso nica.

54Laos (loops)C# possui os seguintes laos (loops):do-whileforwhileforeach-in

55Laos (loops) - do-whileSegue um exemplo utilizando o do-while que soma os 10 primeiros nmeros naturais no nulos:

56Laos (loops) - Exemplo forSegue um exemplo utilizando o for que soma os 10 primeiros nmeros naturais no nulos:

57Laos (loops) - Exemplo whileSegue um exemplo utilizando o while que soma os 10 primeiros nmeros naturais no nulos:

58Laos (loops) - foreach-inVeja um exemplo usando o foreach-in:

Esse exemplo imprime os nmeros 1, 2 e 3.

59Tratamento de erros - try-catchVeja como capturar execuo utilizando o bloco try-catch (exceo: diviso por zero):

60Tratamento de erros - try-catchOutra forma de fazer a mesma coisa:

61Tratamento de erros - finallyO finally sempre executado.

62Classe de exceo customizadaVeja uma classe de exceo criada, ela herda de Exception.

Lembre-se de cri-la no mesmo namespace, seno voc ter que fazer referncia a outro namespace.

63Classe de exceo customizadaUtilizando a classe:

Veja que foi lanada a exceo com throw new.

64Execuo

65Criando arrays (vetores)Os vetores so arrays unidimensionais, eles guardam elementos de um mesmo tipo.

66Criando arrays (vetores)Essa uma das formas de criar um vetor, no caso foi criado um vetor de inteiros cujo tamanho 10.

67Criando arrays (vetores)So armazenados 10 nmeros inteiros (de 0 a 9) e depois esses nmeros so mostrados no console.

68Ordenar um arrayVeja como ordenar um array de inteiros:

Primeiramente o array preenchido com os nmeros: 4, 3, 2 e 1 (nessa ordem).

69Ordenar um arrayLogo aps chamado o mtodo Sort() para ordenar o array crescentemente. Por ltimo mostrado o array. Sada: 1, 2, 3, 4.

70MatrizesVeja como simples declarar matrizes:

Foi criada uma matriz 2x2.

71MatrizesEssa matriz foi preenchida com os valores 1, 2, 3, 4. Logo aps temos 2 for para mostrar os elementos.

72MatrizesOutra forma de resolver o problema:

Veja que a matriz foi inicializada na declarao.

73Mtodo GetValue()Voc pode pegar os elementos de um array utilizando o mtodo GetValue(), basta passar a posio do elemento, veja:

74EnumEnum so listas de valores constantes.

Foi criada a enum mes que possui os valores: janeiro, fevereiro e dezembro.

75ExecuoO valor de janeiro 0, o valor de fevereiro 1 e o valor de dezembro 2.

76Criando classesVeja o exemplo da criao de uma classe:

77Criando classesVeja a classe