Sep 25 2007

Novidades no C# 3.0: Propriedades Automáticas (Automatic Properties)

Autor: Marcos Dell Antonio - Categorias: .NET

Quem trabalha com o .NET 1.1 ou 2.0 e consequentemente com o C# 2.0, sabe o quanto é chato ter que declarar para todas as propriedades um “método” get, outro set e além disso um field para armazenar a respectiva informação, tal como demonstra a figura abaixo:

Classe Pessoa

Tendo em vista esta dificuldade, a Microsoft adicionou à versão 3.0 da linguagem C# um recurso chamado Automatic Properties. Ele permite ao desenvolvedor omitir a declaração do field e as operações realizadas dentro do get e/ou set. A classe acima foi reescrita utilizando este recurso e está representada na figura abaixo:

Classe Pessoa

Ao analisar com o IL DASM o código gerado para as duas implementações acima, percebe-se que no primeiro caso (utilizando a declaração normal de propriedades) há uma declaração do field exatamente com o mesmo nome do código C# (_nome) e os métodos get_Nome e set_Nome, veja:

IL DASM da classe Pessoa

Com o recurso de propriedades automáticas o código gerado segue o mesmo estilo, mas com uma pequena diferença na declaração do field, pois ele foi gerado automaticamente pelo compilador. Veja:

IL DASM da classe Pessoa 

Sem dúvida alguma este será um dos recursos mais utilizados pelos desenvolvedores. Além de proporcionar mais praticidade na hora da codificação, também deixará as classes mais enxutas com relação ao número de linhas do código fonte. E aqui vale aquela máxima: quanto menos linhas de código, menor a chance existirem erros.

Adicione ao del.icio.us del.icio.us | Adicione ao Rec6 Rec6

Faça um comentário