This article has been localized into Czech by the community.
Automatické vlastnosti
Skutečným problémem pro všechny programátory píšící objektově orientovaný kód bylo vždy deklarování veřejných vlastností pro všechna soukromá pole. To je hodně únavná práce, zejména proto, že téměř všechny vlastnosti budou jednoduchým získáváním a nastavováním mapování na soukromé pole, bez jakéhokoli chytrého přidání, jako toto:
private string name;
public string Name
{
get { return name; }
set { name = value; }
}
S tak jednoduchou vlastností bychom v podstatě mohli pole prohlásit za veřejné a používat ho přímo, místo přidávání další vrstvy vlastnosti. Nicméně pravidla OOP nám říkají, že bychom to měli dělat tímto způsobem, a většina z nás odolává pokušení dělat to jednodušším způsobem. S C# 3.0 se už nemusíme potýkat s tímto dilematem! Výše uvedený příklad lze nyní napsat takto:
public string Name
{
get;
set;
}
Nebo použijte ještě méně místa, takto:
public string Name { get; set; }
Žádná deklarace pole a žádný kód pro získání a nastavení hodnoty pole. Vše je automaticky řízeno kompilátorem, který automaticky vytvoří soukromé pole a naplní metody get a set základním kódem potřebným pro čtení a zápis pole. Zvenčí to bude vypadat jako běžná vlastnost, ale ušetříte spoustu dalších úhozů do klávesnice a vaše třída nebude tak nafouklá. Samozřejmě můžete stále používat starý způsob, jak bylo ukázáno v našem prvním příkladu - toto je jednoduše další funkce, kterou můžete použít, pokud máte zájem.