Revista MSDN Magazine Edição 31 - C#(csharp) 2.0 - Tipos parciais e classes estáticas

Este artigo é o primeiro de uma série que tem como objetivo detalhar os novos recursos do C# 2.0. Nesta primeira parte, vamos conhecer um pouco sobre classes parciais e classes estáticas.

Clique aqui para ler todos os artigos desta edição

 

C# 2.0 - Tipos parciais e classes estáticas

Rogério Moraes de Carvalho

 

Este artigo discute

Este artigo usa as seguintes tecnologias

·Tipos parciais;

·Classes estáticas;

·Aplicações Console;

·Aplicações Class Library.

 

C# 2.0 e Visual Studio .NET 2005.

 

A versão 2.0 da linguagem de programação C# introduziu uma série de extensões, como: tipos parciais, classes estáticas, métodos anônimos, tipos e métodos genéricos (generics), iterators e tipos anuláveis. Este artigo é o primeiro de uma série que tem como objetivo detalhar os novos recursos do C# 2.0. Nesta primeira parte, vamos conhecer um pouco sobre classes parciais e classes estáticas.

 

Nota: Para um bom entendimento das técnicas demonstradas nesta série e dos novos recursos do C# 2.0, é ideal que o leitor tenha pelo menos um conhecimento básico da linguagem C#.

 

Os tipos parciais permitem que classes, estruturas e interfaces sejam divididas em múltiplos arquivos fontes para facilitar o desenvolvimento e a manutenção. Porém, um mau uso desse recurso pode provocar o efeito inverso, dificultando o desenvolvimento e a manutenção dos arquivos fontes.

Uma das principais vantagens desse recurso é permitir a separação entre o código escrito pelo usuário e o código gerado automaticamente por uma ferramenta de desenvolvimento. As classes estáticas são aquelas classes que não devem ser instanciadas e que contêm somente membros estáticos.

Classes estáticas são implicitamente fechadas (sealed) e não possuem construtores de instância. O ambiente de execução do .NET Framework 2.0 fornece suporte aos novos recursos introduzidos na linguagem de programação C# 2.0.

Tipos parciais

A linguagem de programação C# 2.0 permite dividir a definição de uma classe, estrutura ou interface em dois ou mais arquivos fontes. Os arquivos fontes conterão seções da definição do tipo de dado, sendo que todas as partes serão combinadas no momento da compilação.

O uso indiscriminado desse novo recurso tende a dificultar o processo de desenvolvimento e de manutenção do código fonte. Seguem duas situações principais onde a divisão da definição de um tipo em múltiplos arquivos pode ser interessante:

·Em grandes projetos que contêm equipes de desenvolvimento: a divisão de um tipo em mais de um arquivo permite que múltiplos desenvolvedores trabalhem simultaneamente;

·Os códigos gerados automaticamente por uma ferramenta para um tipo podem ser separados dos códigos desenvolvidos pelo programador para esse mesmo tipo. Desse modo, toda vez que a ferramenta precisar gerar novamente o código do tipo, então os códigos personalizados acrescentados pelo desenvolvedor não serão perdidos.

O modificador partial é usado na definição de um tipo classe, estrutura ou interface em múltiplas partes. É importante ressaltar que partial não é uma palavra-chave, assim como acontece com as definições de acesso get e set em propriedades. O modificador partial deverá aparecer imediatamente antes de uma das seguintes palavras-chaves: class, struct ou interface.

Cada parte da declaração de um tipo parcial deverá incluir um modificador partial e ser declarado no mesmo namespace ou tipo que contém todas as outras partes dele. O modificador partial indica que partes adicionais da definição do tipo podem existir em qualquer lugar de um projeto, mas a existência de partes adicionais não é um requisito obrigatório.

Ou seja, é perfeitamente válido colocar o modificador partial em uma classe definida em um único arquivo, apesar de não ter sentido. Todas as partes de um tipo parcial deverão ser compiladas juntas de modo que elas possam ser unidas em tempo de compilação.

Os tipos parciais não permitem que tipos já compilados possam ser estendidos, como ocorre no processo de herança de classes não fechadas (declaradas sem o modificador sealed). Tipos aninhados também podem ser definidos em múltiplas partes com uso do modificador partial.

O Visual Studio 2005 utiliza amplamente o novo recurso de tipos parciais na geração automática de diversas classes, como: Windows Forms, Web Forms, DataSets tipados, classes proxy para consumo de XML Web Services, dentre outras.

Desse modo, o desenvolvedor pode incluir códigos personalizados nessas classes sem precisar editar diretamente o arquivo principal gerado pelo Visual Studio 2005, como acontecia no Visual Studio .NET 2003.

No modelo de criação de um Web Site ASP.NET (ou uma aplicação Windows) no Visual Studio 2005, existe uma" [...] continue lendo...

Ebook exclusivo
Dê um upgrade no início da sua jornada. Crie sua conta grátis e baixe o e-book

Artigos relacionados