This article has been localized into Portuguese by the community.
Propriedades automáticas
Uma verdadeira dor no pescoço para todos os programadores que escrevem código orientado a objetos sempre declaram propriedades públicas para todos os campos privados. Esse é um trabalho muito tedioso, especialmente porque quase todas as propriedades serão um simples mapeamento get e set para o campo private, sem nada inteligente adicionado, assim:
private string name;
public string Name
{
get { return name; }
set { name = value; }
}
Com uma propriedade simples como essa, poderíamos muito bem declarar o campo como público e usá-lo diretamente, em vez de adicionar a camada extra de uma propriedade. No entanto, as diretrizes da OOP nos dizem para fazer isso dessa maneira, e a maioria de nós resiste à tentação de fazer isso da maneira mais fácil. Com o C# 3.0, não precisamos mais lidar com esse dilema! O exemplo acima agora pode ser escrito assim:
public string Name
{
get;
set;
}
Ou usando ainda menos espaço, assim:
public string Name { get; set; }
Nenhuma declaração de campo e nenhum código para obter e definir o valor do campo. Tudo isso é tratado automaticamente pelo compilador, que cria automaticamente um campo privado e preenche o método get e set com o código básico necessário para ler e escrever o campo. Do lado de fora, isso parecerá com uma propriedade comum, mas você salvou muitas teclas extras e sua classe ficará menos inchada. Claro, você ainda pode usar o modo antigo, como mostrado no nosso primeiro exemplo - este é simplesmente um recurso extra que você pode usar, se quiser.