Siêu thị PDFTải ngay đi em, trời tối mất

Thư viện tri thức trực tuyến

Kho tài liệu với 50,000+ tài liệu học thuật

© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Tài liệu C# e .NET - Guia do Desenvolvedor pdf
PREMIUM
Số trang
371
Kích thước
4.1 MB
Định dạng
PDF
Lượt xem
1630

Tài liệu C# e .NET - Guia do Desenvolvedor pdf

Nội dung xem thử

Mô tả chi tiết

I

C# E .NET – GUIA DO

DESENVOLVEDOR

Consultores Editoriais

Lorenzo Ridolfi

Gerente Sênior Accenture

Sérgio Colcher

Professor do departamento

de Informática da PUC-Rio

Preencha a ficha de cadastro no final deste livro

e receba gratuitamente informações

sobre os lançamentos e as promoções da

Editora Campus.

Consulte também nosso catálogo

completo e últimos lançamentos em

www.campus.com.br

© 2002, Editora Campus Ltda. – uma empresa Elsevier Science

Todos os direitos reservados e protegidos pela Lei 5.988 de 14/12/73.

Nenhuma parte deste livro, sem autorização prévia por escrito da editora,

poderá ser reproduzida ou transmitida sejam quais forem os meios empregados:

eletrônicos, mecânicos, fotográficos, gravação ou quaisquer outros.

Capa

Adaptação da original americana por RioTexto

Editoração Eletrônica

RioTexto

Revisão Gráfica

Adriana Kramer

Projeto Gráfico

Editora Campus Ltda.

A Qualidade da Informação.

Rua Sete de Setembro, 111 – 16º andar

20050-002 Rio de Janeiro RJ Brasil

Telefone: (21) 3970-9300 FAX (21) 2507-1991

E-mail: [email protected]

ISBN 85-352-0954-9

CIP-Brasil. Catalogação-na-fonte.

Sindicato Nacional dos Editores de Livros, RJ

L697c

Lima, Edwin

C# e .Net para desenvolvedores / Edwin Lima,

Eugênio Reis. – Rio de Janeiro : Campus, 2002

ISBN 85-352-0954-9

1. C# (Linguagem de programação de computador).

2. Programação orientada a objetos (Ciência da computação).

3. Software de componente. I. Reis, Eugênio. II. Título.

02-0351. CDD – 005.117

CDU – 004.41

02 03 04 05 5 4 3 2 1

Dedicatória

Aos meus filhos Miguel e Henrique, que são as pessoas que mais amo neste

mundo.

Agradecimentos

A Deus por ter me dado a coragem e sabedoria diante do desafio tão grande

como foi escrever este livro.

A tia Ló de maneira muito especial, por ter dedicado boa parte da sua vida em

toda a minha formação e educação e por ter me ensinado o “Caminho” – Jesus

– pelo qual devo andar.

Aos meus pais, Adiel e Yolanda, porque sem os esforços que eles fizeram não

poderia ter chegado aqui.

In memoriam

De “mi hermano” Rubén.

De “mi abuelita” Mamá Sarita.

“…consegui, painho…”

Meu filho de dois anos

Edwin Lima

V

VI

Dedicatória

À minha esposa Flávia e aos meus filhos Thales e Alice. Eles são o meu grande

tesouro e fonte de inspiração.

Agradecimentos

A Flávia, por todo o carinho, paciência e estímulo ao longo desta empreitada.

A todos que, direta ou indiretamente, me ajudaram a ser o que eu sou hoje.

In memoriam

Ao meu pai, que recentemente deixou este mundo de maneira tão serena.

"O amor é um oceano de emoções inteiramente rodeado de despesas"

Lorde Dewar

Eugênio Reis

VII

VIII

Os Autores

Edwin Lima, pai de dois filhos brasileiros, Miguel e Henrique, nasceu em El Sal￾vador, na América Central, em 1972, onde obteve a educação fundamental. Em

1992, recebeu uma bolsa de estudos para estudar no Brasil, onde graduou-se

como Bacharel em Ciências da Computação pela Universidade Federal da Paraí￾ba em João Pessoa.

Ingressou no mercado de trabalho em 1996, numa empresa de consultoria

em João Pessoa, onde trabalhou até o ano 2000. Nesse período, participou como

analista de sistemas/desenvolvedor em diversos projetos, dentre os quais se des￾tacam um sistema de home banking, aplicações Web e de data warehouse em em￾presas de telecomunicações na Bahia, Pernambuco e Paraíba, e diversos outros

projetos para empresas do segmento público.

No ano 2000, foi contratado para trabalhar na NEC Computers Internatio￾nal na Holanda como Data Integration & Oracle Specialist, onde atua até hoje

desenvolvendo sistemas no ambiente Oracle para projetos de data warehouse e

de integração de sistemas.

Acompanha ativamente as tendências tecnológicas tendo em sua bagagem

profissional certificações da Microsoft (MCP), larga experiência em linguagens

de programação, suporte a bases de dados SQL Server. É especialista no sistema

operacional MS Windows NT Server e Workstation 4.0 e trabalha no desenvol￾vimento de aplicações para plataformas Microsoft e de código aberto. Investe

seu tempo na leitura e na sua atualização profissional investigando as novas ten￾dências tecnológicas no mercado de TI.

Finalmente, como fruto do seu compromisso com a promoção dos valores

do Reino de Deus, ele se identifica profundamente com as causas sociais que con￾correm de uma forma ou de outra para a construção de uma sociedade mais justa

e igualitária.

IX

Eugênio Reis começou a estudar programação, quase que por acaso, ainda aos 15

anos de idade, num pequeno computador NEZ-8000 com apenas 2k de memó￾ria e um interpretador Basic. Hoje, possui mais de 17 anos dedicados ao assunto e

domina as mais variadas linguagens de programação em diversos ambientes.

Entre 1999 e 2000, obteve as certificações de MCSE (Microsoft Certified

Systems Engineer), MCSD (Microsoft Certified Solution Developer), MCDBA

(Microsoft Certified Consultant), MCT (Microsoft Certified Trainer), OCP

(Oracle Certified Professional) e Borland Delphi Certified Consultant.

Atualmente, trabalha como Consultor de Desenvolvimento Corporativo em

Ambiente Cliente/Servidor e Distribuído sobre uma base de dados de 1,5 bilhão

de registros (aproximadamente 2 terabytes) para o Governo do Estado de Nova

York, nos Estados Unidos.

Seu hobby preferido é música, é multiinstrumentista de cordas e freqüente￾mente publica artigos sobre o assunto na Internet. Isso, claro, quando seus dois

filhos, Thales e Alice, e sua esposa Flávia assim o permitem!

Seu Web site é http://www.eugenio.com.br.

X

Sumário

Prefácio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . XIII

PARTE I

Fundamentos de C# .Net

1 A plataforma .NET . . . . . . . . . . . . . . . . . . . . . . . . . . 3

Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

2 A linguagem C# . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

As características do C# . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

3 Programação Orientada a Objetos (OOP) em C# . . . . . . . . . 68

Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

4 Namespaces, Assemblies e documentação

de sistemas usando XML . . . . . . . . . . . . . . . . . . . . . . 95

Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

Namespaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

Assemblies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100

Documentando sistemas em C# . . . . . . . . . . . . . . . . . . . . . . 112

Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117

5 Windows Forms . . . . . . . . . . . . . . . . . . . . . . . . . . 118

Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118

Usando FORMS: o coração de toda aplicação Windows . . . . . . . . . . 119

Usando o componente TabControl . . . . . . . . . . . . . . . . . . . . . 131

Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160

XI

6 .NET Avançada . . . . . . . . . . . . . . . . . . . . . . . . . . . 161

Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161

Usando o componente FileSystemWatcher . . . . . . . . . . . . . . . . . 161

Usando a classe Process . . . . . . . . . . . . . . . . . . . . . . . . . . . 163

Coleções . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176

Reflection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185

Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188

PARTE II

Estudo de Caso

7 ADO.NET – Projeto e Definição de Dados . . . . . . . . . . . . 193

Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193

Projeto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193

Por onde começar. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194

Conceito de Middleware . . . . . . . . . . . . . . . . . . . . . . . . . . 195

Namespaces de ADO.NET . . . . . . . . . . . . . . . . . . . . . . . . . 197

Codificação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202

Escolhendo a plataforma-alvo. . . . . . . . . . . . . . . . . . . . . . . . 210

Eventos do formulário . . . . . . . . . . . . . . . . . . . . . . . . . . . 212

Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218

8 ADO.NET – Entrada e Validação de Dados . . . . . . . . . . . . 219

Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219

Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219

Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301

9 Relatórios – Usando o Crystal Reports . . . . . . . . . . . . . . 302

Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302

Geração de Relatórios . . . . . . . . . . . . . . . . . . . . . . . . . . . 302

Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331

10 Empacotando um sistema: Gerando discos de instalação. . . . 332

Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332

Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349

Índice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351

XII

Prefácio

Decidir que linguagem usar para se construir um sistema sempre foi um dos pri￾meiros problemas enfrentados por qualquer empresa, não importa o seu porte

nem o tipo de sistema. Normalmente a escolha da linguagem é determinada pela

plataforma, pela natureza do sistema e pela cultura da empresa. Em muitos casos,

o uso de múltiplas linguagens se torna necessário e então logo surgem os proble￾mas de integração. A Microsoft .NET resolve este e muitos outros problemas.

A Microsoft .NET é uma plataforma para desenvolvimento de serviços Web

baseados em XML. Essa é, na verdade, uma definição muito simplista. Como

plataforma, a .NET vai muito além de serviços Web. A Microsoft .NET vai per￾mitir desenvolver qualquer tipo de aplicação usando a linguagem de sua prefe￾rência. C#, Visual Basic.NET, C++, COBOL, Perl, Fortran, Pascal são apenas

algumas das linguagens suportadas na plataforma .NET, que não apenas permite

o uso de múltiplas linguagens, mas também a completa e perfeita integração en￾tre componentes desenvolvidos em linguagens diferentes. Por exemplo, é possí￾vel acessar objetos desenvolvidos em C# a partir de um programa escrito em

COBOL.

Embora seja possível usar várias linguagens na plataforma .NET, C# é aque￾la que deve sempre ser considerada em primeiro lugar. As razões são simples: o

C# oferece o mesmo poder que o C++ e a mesma facilidade de programação

que o Visual Basic, além de ser a linguagem nativa para a nova plataforma da Mi￾crosoft. Até pouco tempo atrás, eu usava o C++ para programas de baixo nível

(usando sockets e threads, por exemplo); o Visual Basic era usado para criar jane￾las e acessar bancos de dados. Hoje, tudo isso pode ser feito usando apenas uma

linguagem – o C#.

O C# oferece poder, facilidade, flexibilidade e é a linguagem nativa para a

plataforma .NET. O C# resolve o abismo entre as linguagens de “baixo nível” e

“alto nível”. O C# é a linguagem que vai garantir seu sucesso na revolução que a

Microsoft vem prometendo. Este livro vai apresentar o leitor tanto à plataforma

.NET quanto à linguagem C#.

Foi com grande prazer que aceitei o convite dos autores para escrever este

prefácio. Conheci Edwin na Paraíba, quando éramos ainda estudantes da UFPB.

Não acredito que já faz tanto tempo! Trabalhamos juntos no nosso primeiro sis￾tema comercial, um home banking, um dos primeiros do Brasil. Alguns anos de- XIII

pois, conhecemos Eugênio, o senhor dos certificados, então consultor de uma

grande empresa de telecomunicações, na qual tivemos a oportunidade de traba￾lhar num sistema desafiador que durou cerca de dois anos e envolveu uma equipe

de aproximadamente 15 pessoas. Nesse meio tempo, também pudemos jogar

muitas partidas de xadrez, congregar as famílias e contar muitas piadas durante

os cafezinhos.

José Edvaldo Saraiva

Software Design Engineer

* José Edvaldo Saraiva foi desenvolvedor e consultor de sistemas distribuídos em empresas de tele￾comunicação pelo Brasil afora. Hoje trabalha em Redmond, Estados Unidos, como Software De￾XIV sign Engineer para uma das maiores empresas do mundo.

PARTE

I

Fundamentos de C# .Net

Tải ngay đi em, còn do dự, trời tối mất!