Как и другие, это должно быть ответом ...
Вы можете использовать автоматические свойства в C # 3 при таргетинге на .NET 2.0 вместе с еще несколько других функций C # 3 . В отличие от (например) деревьев выражений, автоматическим свойствам не требуется ничего особенного из CLR или фреймворка, помимо атрибута [CompilerGenerated]
(который был введен в .NET 2.0).
Итак, если вы используя VS2008 или VS2010, тогда было бы полезно использовать автоматическое свойство.
Для чего это стоит, я бы тоже хотел эту способность. Я хотел бы иметь возможность переменные области видимости в свойстве:
public string Name
{
private string name;
get { return name; }
set { name = value; }
}
Я рассматриваю это как похожее на то, чтобы сделать частную переменную readonly - это не имеет никакого отношения к клиентам, но это помогает обеспечить правильность внутри сам код класса.
Загрузка коллекций может быть сделана
food.getIngredients().size()
, food.getIngredients().isEmpty()
или других методов. Я предполагаю, что некоторый код обращается к коллекции, и это вызывает ее.