+ All Categories
Home > Documents > O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

Date post: 07-Jan-2017
Category:
Upload: phungdien
View: 222 times
Download: 5 times
Share this document with a friend
37
Transcript
Page 1: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS
Page 2: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS
Page 3: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

VÍTOR PEREIRA

O GUIA PRÁTICO

DO

VISUAL C# 2005 EXPRESS

Portugal/2006

Page 4: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

’Microsoft’ is a registered trademark of Microsoft Corporation in the United States and/or other countries and is used by Centro Atlântico under license from owner. ‘O Guia Prático do Visual C# 2005 Express’ is an independent publication not affiliated with Microsoft Corporation.

Reservados todos os direitos por Centro Atlântico, Lda. Qualquer reprodução, incluindo fotocópia, só pode ser feita com autorização expressa dos editores da obra.

O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

Colecção: Tecnologias

Autor: Vítor Emanuel Pereira

Direcção gráfica: Centro Atlântico Revisão técnica: Centro Atlântico Capa: Paulo Buchinho

© Centro Atlântico, Lda., 2006

Av. Dr. Carlos Bacelar, 968 – Escr. 1 – A 4764-901 V. N. Famalicão

© Rua da Misericórdia, 76 – 1200-273 Lisboa

Portugal Tel. 808 20 22 21

[email protected] www.centroatlantico.pt

Impressão e acabamento: Inova 1ª edição: Setembro de 2006 ISBN: 989-615-030-3 ISBN-13: 978-989-615-030-3 Depósito legal: /06

Marcas registadas: Todos os termos mencionados neste livro conhecidos como sendo marcas registadas de produtos e serviços foram apropriadamente capitalizados. A utilização de um termo neste livro não deve ser encarada como afectando a validade de alguma marca registada de produto ou serviço. O Editor e os Autores não se responsabilizam por possíveis danos morais ou físicos causados pelas instruções contidas no livro nem por endereços Internet que não correspondam às Home--Pages pretendidas.

Page 5: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

Índice

PREFÁCIO 13

Introdução ............................................................................................................13

Público-alvo e pré-requisitos...................................................................................14

Características principais ........................................................................................14

Convenções usadas................................................................................................15

Visão geral e Organização......................................................................................16

Código dos Projectos em Visual C#........................................................................20

SOBRE O AUTOR 23

Agradecimentos e Dedicatória ................................................................................23

PARTE I: INTRODUÇÃO E VISÃO GERAL

1 INTRODUÇÃO AO MICROSOFT VISUAL C# 2005 EXPRESS 27

1.1 Visual C# 2005 Express Edition .........................................................27

1.1.1 Características Principais............................................................................. 29

1.1.2 Instalação e Configuração ........................................................................... 36

1.1.3 Plataforma .NET........................................................................................... 44

1.2 O Ambiente de Desenvolvimento Integrado ......................................46

1.2.1 Barra de Menus............................................................................................ 49

1.2.2 Barras de Ferramentas ................................................................................ 50

1.2.3 As Janelas do IDE........................................................................................ 52

1.3 Resumo ..............................................................................................58

1.4 Exercícios ...........................................................................................60

2 INTRODUÇÃO À PROGRAMAÇÃO DE COMPUTADORES 61

2.1 Programação de Computadores ........................................................61

2.2 Uma Máquina Programável: o Computador.......................................63

2.3 Visão do Utilizador .............................................................................64

2.4 Visão do Programador .......................................................................66

2.5 Resumo ..............................................................................................67

2.6 Exercícios ...........................................................................................69

Page 6: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

6 CENTRO ATLÂNTICO – COLECÇÃO TECNOLOGIAS – O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

3 INTRODUÇÃO À PROGRAMAÇÃO EM VISUAL C# 71

3.1 Iniciar, Guardar e Fechar Projectos....................................................71

3.2 Primeira Aplicação de Consola ..........................................................76

3.3 Primeira Aplicação Windows ..............................................................84

3.4 Interacção com o Utilizador ................................................................99

3.5 Palavras Reservadas .......................................................................100

3.6 Introdução ao "Debugging"...............................................................102

3.7 Introdução ao Help ...........................................................................104

3.8 Resumo ............................................................................................108

3.9 Exercícios .........................................................................................110

PARTE II: CONCEITOS DA PROGRAMAÇÃO EM VISUAL C#

4 TIPOS DE DADOS, VARIÁVEIS E EXPRESSÕES 113

4.1 Tipos de Dados e Operações Primitivas ..........................................113

4.1.1 Tipos de Dados Numéricos ........................................................................115

4.1.2 Tipos de Dados de Texto............................................................................116

4.1.3 Tipos de Dados Lógicos .............................................................................117

4.1.4 Outros Tipos de Dados...............................................................................117

4.1.5 Resumo de Tipos de Dados .......................................................................118

4.2 Variáveis ...........................................................................................120

4.3 Operador Atribuição e Expressões...................................................126

4.4 Conversão entre Tipos de Dados.....................................................133

4.5 Precedência de Operadores e Avaliação de Expressões ................137

4.6 Resumo ............................................................................................140

4.7 Exercícios .........................................................................................141

5 OPERADORES DA PROGRAMAÇÃO 143

5.1 Operadores Aritméticos....................................................................143

5.2 Operadores Relacionais e Introdução às Condições .......................148

5.3 Operadores Lógicos e Condições Compostas.................................152

5.4 Operadores de Atribuição.................................................................158

5.5 Introdução às Funções pré-definidas ...............................................160

5.6 Precedência e Associatividade dos Operadores..............................166

5.7 Resumo ............................................................................................170

5.8 Exercícios .........................................................................................171

Page 7: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

ÍNDICE 7

6 MANIPULAÇÃO DE TEXTO: STRINGS 173

6.1 Informação sobre Caracteres...........................................................173

6.2 Operações com Strings....................................................................176

6.3 Comparação de Strings....................................................................179

6.4 Funções Pré-Definidas.....................................................................180

6.4.1 Funções Básicas........................................................................................ 182

6.4.2 Outras Funções.......................................................................................... 188

6.5 A Classe StringBuilder .....................................................................193

6.6 Resumo ............................................................................................199

6.7 Exercícios .........................................................................................200

7 ESTRUTURAS BÁSICAS DA PROGRAMAÇÃO 201

7.1 Estruturas de Decisão ......................................................................202

7.1.1 Introdução às Estruturas de Decisão......................................................... 202

7.1.2 A Declaração if...else ..................................................................... 202

7.1.3 Alternativas Múltiplas: else if............................................................. 205

7.1.4 Declarações if...else Encadeadas ................................................. 210

7.1.5 A Declaração switch............................................................................. 213

7.2 Estruturas de Repetição...................................................................221

7.2.1 Introdução às Estruturas de Repetição (ou Ciclos) ................................... 221

7.2.2 Ciclo for .................................................................................................. 222

7.2.3 Ciclos foreach ...................................................................................... 231

7.2.4 Ciclos while e do...while............................................................. 233

7.2.5 Conceito de Iteração, Contador e Acumulador.......................................... 236

7.2.6 Ciclos Encadeados .................................................................................... 243

7.2.7 Ciclos Infinitos ............................................................................................ 245

7.3 Resumo ............................................................................................246

7.4 Exercícios .........................................................................................247

8 ESTRUTURAS DE DADOS COMPOSTAS 249

8.1 Vectores ...........................................................................................250

8.1.1 Declaração e Manipulação de Vectores .................................................... 251

8.1.2 Vectores e Ciclos ....................................................................................... 255

8.1.3 Métodos Pré-Definidos............................................................................... 259

8.2 Matrizes ............................................................................................265

8.3 Enumerações ...................................................................................270

8.4 Resumo ............................................................................................276

8.5 Exercícios .........................................................................................277

Page 8: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

8 CENTRO ATLÂNTICO – COLECÇÃO TECNOLOGIAS – O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

9 SUBPROGRAMAS OU PROCEDIMENTOS 279

9.1 Dividir, Reutilizar e Abstrair ..............................................................280

9.2 Procedimentos definidos pelo Programador ....................................285

9.3 Funções definidas pelo Programador...............................................287

9.4 Escolha de Nomes de Métodos........................................................289

9.5 Correspondência Argumentos-Parâmetros......................................289

9.6 Mecanismo de Passagem de Parâmetros........................................290

9.7 Resumo ............................................................................................294

9.8 Exercícios .........................................................................................296

10 TRATAMENTO DE ERROS E DEBUGGING 297

10.1 Tipos de Erros ..................................................................................297

10.1.1 Erros de Sintaxe .........................................................................................298

10.1.2 Erros de Lógica...........................................................................................301

10.1.3 Erros de Execução .....................................................................................301

10.2 Projecto em Visual C# ......................................................................303

10.3 Listagem de Erros de Sintaxe Comuns............................................317

10.4 Resumo ............................................................................................334

10.5 Exercícios .........................................................................................335

11 PROGRAMAÇÃO ORIENTADA AOS OBJECTOS 337

11.1 Introdução.........................................................................................338

11.2 Conceitos Básicos ............................................................................343

11.2.1 Classes e Objectos.....................................................................................344

11.2.2 Níveis de Acesso ........................................................................................346

11.2.3 Propriedades...............................................................................................347

11.2.4 Métodos ......................................................................................................350

11.2.5 Membros Estáticos .....................................................................................352

11.2.6 Construtores ...............................................................................................354

11.2.7 Overloading de Métodos.............................................................................357

11.2.8 Overloading de Operadores .......................................................................359

11.2.9 Classes Parciais .........................................................................................361

11.2.10 Classes Seladas .........................................................................................363

11.3 Resumo ............................................................................................364

11.4 Exercícios .........................................................................................365

12 TÉCNICAS AVANÇADAS DE OOP 367

12.1 Encapsulamento...............................................................................368

12.2 Herança ............................................................................................370

12.3 Polimorfismo.....................................................................................376

12.3.1 Membros Virtuais e Redefinição de Métodos.............................................377

12.4 Comentários XML.............................................................................379

12.5 Ferramentas OOP do Visual Studio .................................................382

Page 9: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

ÍNDICE 9

12.5.1 A Janela Class View .................................................................................. 382

12.5.2 O Object Browser....................................................................................... 384

12.6 Resumo ............................................................................................386

12.7 Exercícios .........................................................................................388

PARTE III: CRIAÇÃO DE APLICAÇÕES EM VISUAL C#

13 CONSTRUÇÃO DA INTERFACE GRÁFICA 391

13.1 A Caixa de Ferramentas (Toolbox) ..................................................392

13.2 Visão Geral dos Controlos mais Comuns ........................................394

13.2.1 Aba Common Controls............................................................................... 394

13.2.2 Aba Containers .......................................................................................... 397

13.2.3 Aba Menus & Toolbars............................................................................... 398

13.3 Desenho da GUI: Apresentação de Boas Práticas ..........................399

13.4 Propriedades ....................................................................................400

13.5 Projecto em Visual C#: Gestão de Filmes .......................................405

13.5.1 Desenho da Interface Gráfica .................................................................... 406

13.6 Especificar a Ordem dos Tabs .........................................................414

13.7 Posicionamento dos Controlos no Form ..........................................416

13.8 Resumo ............................................................................................417

13.9 Exercícios .........................................................................................418

14 CONSTRUÇÃO DE UM JOGO: ADIVINHA O NÚMERO 421

14.1 Antevisão do Projecto ......................................................................422

14.2 Controlos Utilizados .........................................................................424

14.3 Controlos RadioButton, CheckBox e GroupBox ..............................425

14.4 Controlos ListBox e ComboBox .......................................................428

14.5 Controlos NumericUpDown e ToolTip..............................................430

14.6 Projecto em Visual C#: Jogo ‘Adivinha o número’ ...........................431

14.6.1 Desenho da Interface Gráfica .................................................................... 431

14.6.2 Adicionar Código aos Eventos................................................................... 435

14.7 Resumo ............................................................................................440

14.8 Exercícios .........................................................................................441

15 CRIAÇÃO DE UM EDITOR DE TEXTO 443

15.1 Antevisão do Projecto ......................................................................444

15.2 Caixas de Diálogo Pré-Definidas .....................................................445

15.3 Caixa de Diálogo MessageBox ........................................................447

15.3.1 Botões disponíveis ..................................................................................... 448

15.3.2 Ícones disponíveis...................................................................................... 449

Page 10: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

10 CENTRO ATLÂNTICO – COLECÇÃO TECNOLOGIAS – O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

15.3.3 Botão por omissão......................................................................................450

15.3.4 Valor retornado ...........................................................................................450

15.3.5 Exemplos de Utilização ..............................................................................451

15.4 Caixa de Diálogo ColorDialog ..........................................................452

15.5 Caixa de Diálogo FontDialog ............................................................453

15.6 Caixas de Diálogo OpenFileDialog e SaveFileDialog ......................454

15.7 Projecto em Visual C#: Bloco de Notas............................................456

15.7.1 Desenho da Interface Gráfica.....................................................................456

15.7.2 Adicionar Código aos Eventos....................................................................457

15.7.3 Explicação do Código .................................................................................461

15.8 Resumo ............................................................................................464

15.9 Exercícios .........................................................................................466

16 CONSTRUÇÃO DE UM WEB BROWSER 469

16.1 Antevisão do Projecto.......................................................................469

16.2 Controlos Utilizados..........................................................................470

16.3 Projecto em Visual C#: Web Browser ..............................................471

16.3.1 Adicionar uma Barra de Menus ..................................................................472

16.3.2 Adicionar e Chamar uma Janela Ajuda > Sobre ........................................473

16.3.3 Adicionar outros Controlos .........................................................................475

16.3.4 Configurar o Controlo ToolStrip ..................................................................477

16.3.5 Configurar o Controlo StatusStrip...............................................................479

16.3.6 Inserir o Código para Navegar em Múltiplas Abas .....................................479

16.3.7 Navegar pela primeira vez..........................................................................482

16.3.8 Adicionar mais Opções de Menu................................................................483

16.3.9 Adicionar um Menu de Contexto ................................................................488

16.4 Resumo ............................................................................................491

16.5 Exercícios .........................................................................................492

17 ACESSO A BASES DE DADOS 493

17.1 Antevisão do Projecto.......................................................................494

17.2 Conceitos, Regras e Terminologia básica........................................495

17.3 Componentes de Acesso a Bases de Dados...................................498

17.4 Projecto em Visual C#: Gestão de Contactos ..................................499

17.4.1 Criar uma Base de Dados ..........................................................................500

17.4.2 Ligar uma Aplicação a uma Base de Dados...............................................505

17.4.3 Visualizar Dados.........................................................................................507

17.4.4 Actualizar Dados.........................................................................................509

17.5 Resumo ............................................................................................511

17.6 Exercícios .........................................................................................512

Page 11: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

ÍNDICE 11

18 GESTÃO DE BASES DE DADOS COM O SQL SERVER MANAGEMENT STUDIO EXPRESS 513

18.1 Instalação do SSMSE CTP ..............................................................514

18.2 Criar uma Base de Dados ................................................................516

18.3 Criar Consultas e Vistas...................................................................523

18.4 Acesso à Base de Dados .................................................................530

18.5 Resumo ............................................................................................534

18.6 Exercícios .........................................................................................535

ANEXO I: PROGRAMAÇÃO EM C# 536

ANEXO II: RESUMO DOS CONTROLOS DO WINDOWS 551

Page 12: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS
Page 13: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

Prefácio

Introdução

Nunca houve melhor período para aprender a programar um computa-dor, tanto a nível de simplicidade como de funcionalidade. Por outro lado, nunca a necessidade de programação de computadores foi tão necessária e apreciada: desde as mais pequenas rotinas diárias que facilitam a nossa vida quotidiana, aos aspectos profissionais em todas as áreas da sociedade, até aos momentos de descanso e lazer.

O recente lançamento, por parte da Microsoft®, do Visual Studio® 2005

Express Edition, um conjunto de produtos que inclui o Visual C#® 2005 Express Edition, é, sem qualquer sombra de dúvida, uma evolução inte-ligente na disponibilização de ferramentas poderosas e de classe indis-cutível para que cada vez mais programadores conheçam o fascinante mundo da programação.

Acresce ainda um importante aspecto: o Visual C# 2005 Express é grá-tis (confira as condições de utilização em http://msdn.microsoft.com/ vstudio/express/), aliás, como o pacote completo Visual Studio 2005 Express. Contudo, o Visual C# não é uma ferramenta de demonstração ou uma versão para desenvolver aplicações de qualidade ou funcionali-dade limitada. É uma poderosa ferramenta que permite a criação de

aplicações para o Windows® e de bibliotecas de código reutilizável. É a linguagem de programação preferida de uma grande parte de progra-madores profissionais, mas também daquelas pessoas que desejam aprender a programar, criando software com utilidade prática, de forma simples e rápida.

Page 14: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

14 CENTRO ATLÂNTICO – COLECÇÃO TECNOLOGIAS – O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

Público-alvo e Pré-requisitos

Este livro é para todos: estudantes, programadores de outras lingua-gens, aprendizes de programadores e também para aquelas pessoas que sempre pensaram que a programação era algo demasiado difícil e exclusivo dos profissionais.

Para a leitura deste livro não são necessários quaisquer requisitos pré-vios ao nível de linguagens de programação de computadores. O único conhecimento necessário é o da utilização de aplicações de computado-res, mais concretamente de programas em ambiente Windows, como, por exemplo, as aplicações do Microsoft Office.

No entanto, caso o leitor pertença ao grupo de pessoas que já possui alguns conhecimentos sobre linguagens de programação, por exemplo, tendo já programado em Windows (Visual Basic ou outra) ou mesmo em modo não gráfico (Pascal, C, entre outras), então a transição para o Visual C# 2005 Express deverá ser consideravelmente mais simples, podendo, desde logo, utilizar funcionalidades mais avançadas.

Características Principais

Este livro inclui diversas características pensadas para que a programa-ção de computadores seja simultaneamente divertida e prática. Algu-mas das características incluem:

� No início de cada capítulo existe uma listagem de objectivos que identifica de forma clara as metas a atingir;

� Com excepção dos primeiros dois capítulos, de cariz mais teó-rico, todos os capítulos apresentam projectos práticos em Visual C#, do tipo "exercício guiado", em que o leitor pode reproduzir, passo-a-passo, a demonstração ou projecto a desenvolver;

� A Parte II apresenta um enquadramento sobre os conceitos bási-cos da programação de computadores – fundamental para a compreensão desta área de conhecimento. Por outro lado, os projectos desta parte estão divididos em secções, com exemplos práticos à medida que cada secção é apresentada e não no final do capítulo;

Page 15: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

PREFÁCIO 15

� Todos os capítulos encontram-se profusamente ilustrados. Este aspecto é considerado fundamental por forma a melhor guiar o leitor na reprodução dos passos a dar em cada projecto;

� Os capítulos da Parte III, de aplicação prática de conhecimentos, e necessariamente mais elaborados, apresentam como primeira secção uma "Antevisão do Projecto", que descreve o funciona-mento básico pretendido;

� Os ficheiros dos exemplos práticos encontram-se disponíveis para os leitores. Veja na página 12 como pode ter acesso a es-ses ficheiros.

� Em todos os capítulos são usadas caixas com Dicas e Defini-ções que identificam, respectivamente, informação útil e o signifi-cado de termos:

DICA: Pressione Ctrl+Espaço para forçar a visualização do

IntelliSense ou escolha uma das opções existentes em EDIT >

INTELLISENSE.

DEFINIÇÃO: Uma classe é uma colecção de código que representa um objecto da programação, como, por exemplo, uma janela, um botão, um menu e uma caixa de texto.

� Todos os capítulos terminam com um Resumo e um conjunto de Exercícios que o leitor pode (e deve) tentar responder/realizar de forma a testar os seus conhecimentos.

Convenções Usadas

Este livro utiliza diversas convenções com vista a facilitar a assimilação da informação:

� Termos em inglês ou nomes específicos ao Visual C# são apre-sentados, de uma forma geral, em itálico (com excepção de con-ceitos que deverão ser familiares):

Page 16: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

16 CENTRO ATLÂNTICO – COLECÇÃO TECNOLOGIAS – O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

"De forma idêntica ao Splash Screen, seleccione..."

"...controlos ToolStrip, StatusStrip, TabControl."

� Palavras-chave, importantes para a compreensão do assunto a tratar, ou então valores a introduzir pelo leitor, são identificados a negrito:

"Esta prática designa-se por abstracção."

"Atribua o texto Operadores Atribuição e o nome btnAtribuir."

� O acesso a opções de menus é formatado em letras maiúsculas pequenas. O carácter ">" é utilizado para separar o menu da opção:

"...seleccione PROJECT > ADD WINDOWS FORM…"

� O código em Visual C# encontra-se formatado em Courier New com um ligeiro sombreado:

string msg = "Olá. Bons programas!"; MessageBox.Show("A mensagem é: " + msg);

� Combinações de teclas são identificadas através do carácter "+". Por exemplo, Ctrl+Espaço significa pressionar a tecla "Con-

trol" e de seguida premir a barra de espaços, soltando de segui-da as duas teclas.

Visão Geral e Organização

Este livro está dividido em dezoito capítulos, organizados em três par-tes.

A Parte I: Introdução e Visão Geral consiste nos primeiros três capí-tulos.

� Capítulo 1 – Introdução ao Microsoft Visual C# 2005 Express. Este capítulo apresenta o Visual C# 2005 Express Edition – uma poderosa ferramenta de desenvolvimento de apli-cações –, bem como uma visão geral sobre a plataforma .NET – um conjunto de ferramentas para apoiar o processo de desen-

Page 17: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

PREFÁCIO 17

volvimento, distribuição e execução de aplicações. Mais con-cretamente, são apresentadas as características principais, o processo de instalação, e uma descrição do ambiente de desen-volvimento, nomeadamente as barras de menus e de ferramen-tas e as janelas mais importantes do Visual C# (a partir de agora, sempre que nos referirmos ao ‘Visual C#’ estaremos a falar do ‘Visual C# 2005 Express’).

� Capítulo 2 – Introdução à Programação de Computadores. Apresenta o conceito de programação de computadores. Neste capítulo são abordadas tanto a linguagem natural do computador como a linguagem usada para os programar. A distinção entre dois dos principais intervenientes do computador – o utilizador e o programador – são discutidas.

� Capítulo 3 – Introdução à Programação em Visual C#. Neste capítulo apresentam-se os passos para iniciar, guardar e fechar projectos e é criada a primeira aplicação de consola e Windows: um programa que lê um nome e apresenta uma mensagem de boas-vindas. São ainda abordados os conceitos de interacção com o utilizador (mostrar resultados), e de debugging. O capítulo termina com uma introdução ao sistema de ajuda (Help).

A Parte II: Conceitos da Programação em Visual C# apresenta os conceitos básicos da programação em nove capítulos.

� Capítulo 4 – Tipos de Dados, Variáveis e Expressões. Aborda os tipos de dados principais do Visual C# – numéricos (inteiros e reais), texto e valores verdadeiro/falso –, e o conceito e a atribui-ção de expressões simples a variáveis.

� Capítulo 5 – Operadores da Programação. O Visual C#, como todas as outras linguagens de programação, possui um conjunto de operadores de forma a realizarem cálculo sobre valores. A apresentação dos diferentes tipos de operadores – matemáticos, relacionais, lógicos e de atribuição –, para além dos conceitos de funções pré-definidas e de precedência de operadores é reali-zada neste capítulo.

Page 18: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

18 CENTRO ATLÂNTICO – COLECÇÃO TECNOLOGIAS – O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

� Capítulo 6 – Manipulação de Texto: Strings. Aborda a manipulação de caracteres/texto tanto a nível das suas opera-ções básicas como descrevendo diversas funções da plataforma .NET relacionadas com o seu tratamento.

� Capítulo 7 – Estruturas Básicas da Programação. Descreve, com algum pormenor, as estruturas de controlo básicas da pro-gramação. Este capítulo deve ser compreendido em detalhe suficiente para que o leitor/programador possua bases sólidas na criação de aplicações.

� Capítulo 8 – Estruturas de Dados Compostas. As estruturas de dados compostas, nomeadamente vectores, matrizes e enu-merações são o tema deste capítulo.

� Capítulo 9 – Subprogramas ou Procedimentos. Por forma a realçar a importância e as vantagens da programação modular, este capítulo aborda o conceito de subprograma ou procedi-mento, tanto pré-definidos como codificados pelo programador.

� Capítulo 10 – Tratamento de Erros e Debugging. Apresenta os três tipos de erros da programação de computadores: sintaxe, lógica e execução. Aborda o debugging que permite encontrar erros de lógica e afinar o programa. Descreve o funcionamento do bloco try...catch associado aos erros de execução.

� Capítulo 11 – Programação Orientada aos Objectos. Des-creve o paradigma da programação orientada aos objectos, nomeadamente através de um exemplo e à luz de conceitos já apresentados.

� Capítulo 12 – Técnicas Avançadas de OOP. Consolida o para-digma orientado aos objectos através dos três pilares funda-mentais: encapsulamento, herança e polimorfismo. Realça a importância dos comentários XML na definição de classes e descreve duas ferramentas sobre classes do Visual Studio.

A Parte III: Criação de Aplicações em Visual C# aborda a criação de aplicações para o Windows. Esta parte é composta por seis capítulos.

Page 19: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

PREFÁCIO 19

� Capítulo 13 – Construção da Interface Gráfica. Fornece uma visão geral do desenho da interface gráfica. Os conceitos mais importantes são descritos neste capítulo, nomeadamente os controlos mais comuns da Toolbox (caixa de ferramentas), boas práticas na criação de interfaces gráficas, descrição dos dife-rentes tipos de propriedades dos controlos, especificação da ordem dos Tabs e alinhamento de controlos. Depois de ler este capítulo, o leitor deverá ser capaz de criar interfaces gráficas simples mas com um aspecto profissional.

� Capítulo 14 – Construção de um Jogo: Adivinha o Número Ilustra a criação de um jogo para adivinhar um número “pen-sado” pelo computador. Os controlos do Windows que permitem ao utilizador seleccionar opções são descritos neste capítulo. Este capítulo aborda também a geração de números aleatórios pelo computador.

� Capítulo 15 – Criação de um Editor de Texto. Mostra a criação de um editor de texto simples permitindo abrir e guardar fichei-ros, bem como alterar a cor e o tipo de letra visualizados no editor. Estas funcionalidades demonstram a utilização de caixas de diálogo pré-definidas, um conjunto de componentes muito comum em praticamente todas as aplicações.

� Capítulo 16 – Construção de um Web browser. Ilustra a cria-ção de uma aplicação do tipo Web browser, que permite navegar na Internet. A aplicação possui como característica principal o facto de permitir abrir várias páginas em simultâneo (navegação em abas), para além de incluir um menu, barras de ferramentas e de estado, e um splash screen inicial.

� Capítulo 17 – Acesso a Bases de Dados. Apresenta os concei-tos e a terminologia básica, identifica os componentes de acesso a dados e cria uma base de dados, permitindo o seu acesso.

� Capítulo 18 – Gestão de Bases de Dados com o SQL Server Management Studio Express. Apresenta uma importante fer-ramenta de administração de bases de dados: o SQL Server Management Studio Express. Após a instalação desta aplicação é criada uma base de dados com duas tabelas e é apresentada a sintaxe da declaração SELECT do SQL – uma linguagem de

Page 20: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

20 CENTRO ATLÂNTICO – COLECÇÃO TECNOLOGIAS – O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

acesso a bases de dados. Este capítulo termina criando uma aplicação simples (utilizando várias janelas) que acede a uma tabela e a uma vista da base de dados.

Código dos Projectos em Visual C#

A tabela seguinte apresenta os diversos projectos criados ao longo dos capítulos que compõem o livro.

Capítulo Nome do Projecto e Descrição

1 e 2 Não há projectos

3 Bem Vindo Console Aplicação consola que pede um nome e mostra uma mensagem de boas vindas.

Bem Vindo Windows Aplicação Windows que mostra uma mensagem de boas vindas ao utilizador.

4 Variáveis Demonstra a utilização de variáveis, operações numéricas e com texto, e a precedência dos operadores.

5 Operadores Ilustra o funcionamento dos diversos tipos de operadores e a utilização de funções pré-definidas.

6 São usados fragmentos de código e não um projecto.

7 Estruturas de Decisão Exemplos de utilização da estrutura if...else.

switch A estrutura switch e os testes de decisão

múltipla. Construção de uma calculadora simples.

Estruturas de Repetição Os três tipos de ciclos em Visual C#: for,

foreach e while.

Page 21: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

PREFÁCIO 21

Capítulo Nome do Projecto e Descrição

8 Estruturas de Dados Apresenta o funcionamento básico dos vectores e das enumerações.

9 Métodos Pré-definidos e definidos pelo programador, incluindo as duas formas de passagem de parâmetros.

10 media Ilustra os três tipos de erros possíveis: sintaxe, lógica e execução. Apresenta ainda a utilização de argumentos na linha de comando.

11 e 12 Classes Codifica as classes Rectangulo, Angulo, Ponto e Circulo, implementando propriedades, construtores, overloading de operadores e redefinição de métodos, entre outros aspectos da programação orientada aos objectos.

13 Controlos e GUI Apresenta os controlos mais importantes e o desenho da interface gráfica (GUI).

14 AdivinhaNumero Jogo que mostra o funcionamento dos controlos associados à escolha de opções: CheckBox, RadioButton e NumericUpDown, entre outros controlos.

15 Editor de Notas Apresenta o funcionamento das caixas de diálogo pré-definidas para abrir e guardar um ficheiro, e para alterar a cor e o tipo de letra.

Page 22: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

22 CENTRO ATLÂNTICO – COLECÇÃO TECNOLOGIAS – O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

Capítulo Nome do Projecto e Descrição

16 Web Browser Aplicação que permite navegar na Internet com a possibilidade de ter várias páginas abertas em simultâneo.

17 Contactos Projecto vazio utilizado na criação de uma base de dados.

Acesso a Dados Faz a gestão de uma simples base de dados com contactos.

18 Gestão de Colaboradores Aplicação de gestão simples de uma base de dados com duas tabelas e uma vista.

Page 23: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

Sobre o Autor

Vítor Pereira

Vítor Emanuel Pereira é Professor Auxiliar na Universidade Lusíada, onde se tem dedicado a nível de docência e de investigação.

Possui uma licenciatura em Informática/Matemáticas Aplicadas e é mes-tre e doutor pela Universidade de Cranfield (Inglaterra).

Tem participado em diversos projectos de I&D nacionais e supervisionou vários projectos em colaboração com organizações nacionais e inter-nacionais. Lecciona, ao nível de cursos de licenciatura, as disciplinas Programação de Computadores, Microprocessadores e Bases de Dados.

É autor, nesta mesma colecção, do livro O Guia Prático do Visual Basic 2005 Express.

Os seus interesses incluem a Engenharia de Software e os Sistemas de Informação. O seu passatempo preferido é a Astronomia.

Agradecimentos

Uma palavra de gratidão muito especial ao Editor – Libório Manuel Silva, do Centro Atlântico – pelo convite endereçado para que escre-vesse esta obra e por me ter proporcionado as condições necessárias para levar a cabo este trabalho.

Um agradecimento muito sentido a todos os meus familiares e a todos os meus amigos, em especial aos meus pais, pelas lições frequentes de dedicação e amor.

Dedicatória

Este livro é dedicado à minha mulher, Rachel. Ela é a minha inspiração diária, o Sol da minha vida.

Page 24: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS
Page 25: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

PARTE I

INTRODUÇÃO E V I S Ã O GERAL

1 Introdução ao Microsoft Visual C# 2005 Express.......................... 27

2 Introdução à Programação de Computadores .............................. 61

3 Introdução à Programação em Visual C# ......................................... 71

Page 26: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS
Page 27: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

1 Introdução ao Microsoft Visual C# 2005 Express

Este capítulo apresenta o Visual C# 2005 Express Edition, uma aplica-ção que permite o desenvolvimento de programas numa linguagem de programação sofisticada e poderosa, e a plataforma .NET, uma tecno-logia da Microsoft sobre a qual os programas desenvolvidos para o Windows são executados.

Os objectivos para este capítulo são:

� Fazer uma introdução e apresentar as características principais do Visual C# 2005 Express Edition;

� Apresentar os passos associados à instalação desta ferramenta;

� Descrever sucintamente a plataforma .NET da Microsoft;

� Apresentar e descrever o Ambiente de Desenvolvimento Integra-do.

1.1 Visual C# 2005 Express Edition

O Visual C# 2005 Express Edition é uma ferramenta de desenvolvi-mento que permite a criação de aplicações para a plataforma .NET, nomeadamente para o sistema operativo Microsoft Windows.

O nome Visual descreve a forma como os programas são criados, adi-cionando controlos a uma janela, especificando as propriedades e ac-ções sobre esses controlos, e escrevendo linhas de código para imple-mentar as funcionalidades. Esta característica evidencia aquilo que se designa por filosofia de desenvolvimento rápido de aplicações (ou RAD, Rapid Application Development).

Page 28: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

28 CENTRO ATLÂNTICO – COLECÇÃO TECNOLOGIAS – O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

C# (pronuncia-se C-Sharp1) é o nome da linguagem de programação baseada principalmente no C++ mas que inclui aspectos de várias outras linguagens de programação, nomeadamente Delphi, Visual Basic e Java. O C# foi inventado pela Microsoft e apareceu em 2001, tendo a última revisão da linguagem sido em 2005.

O termo Express designa um conjunto de ferramentas de programação grátis e de fácil utilização e aprendizagem.

Para além da linguagem de programação Visual C#, o conjunto de pro-dutos denominados Express Edition inclui:

� Mais três ferramentas de programação: Visual Basic 2005 Express Edition, Visual C++ 2005 Express Edition e Visual J# 2005 Express Edition;

� O Visual Web Developer 2005 Express Edition que é uma fer-ramenta para a criação de sítios de internet dinâmicos;

� O SQL Server 2005 Express Edition, um sistema de gestão de bases de dados (SGBD) que permite a criação de aplicações com acesso a bases de dados.

Este conjunto de produtos designa-se por Visual Studio 2005 Express e é vocacionado para estudantes, principiantes em programação e autodidactas.

O Visual Studio Express é uma ferramenta grátis (confira as condições de utilização em http://msdn.microsoft.com/vstudio/express/).

A linguagem Visual C# é uma ferramenta de elevada produtividade permitindo um desenvolvimento de aplicações extremamente rápido.

Para além da edição Express, existem ainda as versões Standard, Pro-fessional e várias edições Team System, dirigidas a clientes diferentes, o que implica características distintas.

O Visual C# 2005 Express, à semelhança das restantes linguagens de programação Express, permite criar três tipos de aplicações:

1 sharp é a palavra inglesa para sustenido, uma alteração musical que sobe uma nota meio-tom em relação ao normal. O símbolo do sustenido (♯) é muito parecido com o símbolo cardinal mas não existe no teclado.

Page 29: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

1 – INTRODUÇÃO AO MICROSOFT VISUAL C# 2005 EXPRESS 29

� Aplicações para o Windows Aplicações com uma interface grá-fica, incluindo botões, janelas, menus, barras de ferramentas, etc., como em qualquer aplicação típica do Windows;

� Aplicações de Consola Aplicações sem qualquer interface grá-fica, isto é, apenas em modo de texto, numa janela do sistema operativo em que os utilizadores usam texto para comunicar com o programa. No Windows a janela de consola designa-se por command prompt e permite a execução de comandos do MS-DOS;

� Componentes Reutilizáveis Aplicações com a extensão .DLL (Dynamic Link Libraries), uma colecção de pequenos programas que servem para a construção de outras aplicações.

Este livro aborda, maioritariamente, o desenvolvimento de aplicações para o Windows (nomeadamente nos capítulos da Parte III) mas exem-plos de aplicações de consola também são dados. O primeiro exemplo de cada um destes tipos de projectos é dado no Capítulo 3.

1.1.1 CARACTERÍSTICAS PRINCIPAIS

O Visual C# Express possui um conjunto de características que visam ajudar o programador principiante a desenvolver aplicações de forma rápida e divertida. A listagem seguinte apresenta dez das principais características que deve conhecer por forma a tirar o maior partido da programação para o Windows. A maior parte das características evi-dencia a filosofia de desenvolvimento rápido de aplicações (RAD).

Apesar de provavelmente não ser possível entender neste momento cada um dos pontos da listagem seguinte, pode sempre voltar a esta lista à medida que for progredindo no livro.

1. IntelliSenseTM

A tecnologia IntelliSense (Intelligent Sense) disponibiliza suges-tões de sintaxe e permite indentar e completar palavras de forma automática. Na Figura 1-1 pode ver a introdução de str e o IntelliSense a sugerir a palavra string.

Quando vir a opção que pretende seleccionada pelo IntelliSense pode pressionar uma das teclas seguintes: Tab, Enter e espaço,

Page 30: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

30 CENTRO ATLÂNTICO – COLECÇÃO TECNOLOGIAS – O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

(ou eventualmente o ponto final ou o operador igual, entre outras existentes), para que a palavra seja completada.

Figura 1-1

DICA: Pressione Ctrl+Espaço para forçar a visualização do Intelli-

Sense ou escolha uma das opções existentes em EDIT >

INTELLISENSE (disponível apenas quando estiver a editar código).

2. Editar e Continuar (Edit and Continue)

Enquanto estiver a experimentar (a fazer o debug) a sua aplica-ção, pode fazer alterações ao seu código e continuar a sua exe-cução, à luz das novas alterações efectuadas, sem que tenha de parar a execução do programa. A Figura 1-2 mostra a execução de um programa (identificado pela linha amarela e seta da mesma cor à esquerda) e a possibilidade de se alterar o código e de seguida continuar a executar o programa.

Figura 1-2

3. Fragmentos de Código (Code Snippets)

Page 31: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

1 – INTRODUÇÃO AO MICROSOFT VISUAL C# 2005 EXPRESS 31

Os Code Snippets são fragmentos de código reutilizáveis que aumentam a produtividade e reduzem o número de erros do programa, uma vez que mostram a forma recomendada de reali-zar as tarefas. São dezenas de fragmentos de código que podem ser estendidos e adaptados às necessidades do progra-mador. Permitem, por exemplo, ouvir uma música, adicionar uma dica a um controlo, obter um texto ou imagem do Clipboard, visualizar uma imagem gif animada e desenhar várias funciona-lidades. Na janela de código, caso conheça o atalho correspon-dente ao fragmento, digite-o e assim que apareça seleccionado no IntelliSense pressione duas vezes a tecla TAB. (Pode ainda pressionar o botão do lado direito do rato e seleccionar Insert Snippet... ou ainda acedendo a EDIT > INTELLISENSE > INSERT

SNIPPET). Por exemplo, o atalho para ouvir uma música é sndPlay, como mostram as duas figuras seguintes:

Figura 1-3

Figura 1-4

Page 32: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

32 CENTRO ATLÂNTICO – COLECÇÃO TECNOLOGIAS – O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

DICA: Para aceder a uma janela de gestão dos Code Snippets aceda a TOOLS > CODE SNIPPETS MANAGER, por exemplo para conhecer os fragmentos existentes ou relem-brar a palavra de atalho para um determinado fragmento.

4. Listagem de Erros e Avisos

Uma importante característica do Visual C# é alertar o progra-mador para os erros de programação, à medida que este vai codificando. Na Figura 1-5 falta um ";" no final da linha e a janela de listagem de erros (VIEW > ERROR LIST) indica este facto.

Figura 1-5

5. Comentários XML

A documentação de um programa é uma parte importante no desenvolvimento de uma aplicação. O Visual C# 2005 permite a adição de comentários no código em formato XML que podem ser facilmente extraídos e convertidos em documentação. Os comentários são também usados pelo IntelliSense para mostrar a informação sempre que reutilizar o seu código.

Digite três barras (///) numa linha vazia anterior a um método para visualizar o conjunto de linhas começadas com três barras da Figura 1-6.

Page 33: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

1 – INTRODUÇÃO AO MICROSOFT VISUAL C# 2005 EXPRESS 33

Figura 1-6

6. Renomear

Como o próprio nome indica, esta função permite alterar o nome dos identificadores usados no código, como, por exemplo, variá-veis, métodos e propriedades. Para além de renomear a decla-ração do elemento, altera também todas as referências com o novo nome. Seleccione REFACTOR > RENAME e verá aparecer a caixa de diálogo Rename. (O menu REFACTOR só é visível quando a janela de código estiver seleccionada).

Figura 1-7

7. Modelos de Itens Novos

Para que possa ser mais produtivo no desenvolvimento das apli-cações e se concentrar nas tarefas realmente importantes, o Visual C# disponibiliza um conjunto de modelos de itens aces-síveis em PROJECT > ADD NEW ITEM.

Page 34: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

34 CENTRO ATLÂNTICO – COLECÇÃO TECNOLOGIAS – O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

Figura 1-8

8. Controlos Novos

Tem à sua disposição uma impressionante lista de novos con-trolos: a maior selecção de controlos de todas as edições ante-riores do Visual C#. É através destes controlos que irá poder construir aplicações com uma interface gráfica rica e profissio-nal. Os controlos residem na Toolbox (caixa de ferramentas). Faça VIEW > TOOLBOX (ou utilize o atalho Ctrl+W, X).

Figura 1-9

9. Smart Tags

Uma grande parte dos controlos inclui uma pequena imagem (ícone) no canto superior direito, representada através de uma

Page 35: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

1 – INTRODUÇÃO AO MICROSOFT VISUAL C# 2005 EXPRESS 35

seta a apontar para a direita, que permite o acesso rápido às acções mais comuns sobre esse controlo.

Figura 1-10

10. Integração com o SQL Server

Sem necessitar de sair do ambiente de desenvolvimento, crie bases de dados e tabelas, e insira dados e faça consultas sobre os seus dados (Figura 1-11).

Muitas outras características poderiam ser descritas, nomeadamente:

� Serviços XML na Web: ferramentas e assistentes que permitem a ligação a serviços de Internet com base em documentos XML;

� Acesso à comunidade de programadores: permite, por exemplo, colocar questões a programadores mais experientes e fazer pesquisas. Aceda à comunidade através do menu COMMUNITY (Figura 1-12);

� Página inicial (Start Page): acessível fazendo VIEW > OTHER

WINDOWS > START PAGE;

� Aplicações-exemplo para principiantes (Built-in Starter Kits): aceda à Start Page e na área Getting Started escolha a opção Use a Starter Kit.

� entre muitas, muitas outras...

Page 36: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

36 CENTRO ATLÂNTICO – COLECÇÃO TECNOLOGIAS – O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

Figura 1-11

Figura 1-12

1.1.2 INSTALAÇÃO E CONFIGURAÇÃO

Antes de instalar e começar a desenvolver programas para o Windows é necessário descarregar o Visual C# 2005 Express Edition.

1. Através do seu navegador de Internet (browser), aceda a http://msdn.microsoft.com/vstudio/express/visualcsharp/.

Page 37: O GUIA PRÁTICO DO VISUAL C# 2005 EXPRESS

Recommended