Я понимаю преимущества PROPERTIES по сравнению с FIELDS, но мне кажется, что использование свойств, реализованных в AUTO, по сравнению со свойствами, реализованными в MANUAL, на самом деле не дает никаких преимуществ, кроме того, что делает код немного более кратким, чтобы на него смотреть.
Я чувствую себя намного комфортнее, используя:
private string _postalCode;
public string PostalCode
{
get { return _postalCode; }
set { _postalCode = value; }
}
Вместо:
public string PostalCode { get; set; }
в первую очередь потому, что если я когда-либо захочу выполнить какую-либо пользовательскую реализацию get и set, яЯ должен создать свою собственную собственность в любом случае при поддержке частного поля.Так почему бы просто не откусить пулю с самого начала и сразу придать всем свойствам такую гибкость для согласованности?Это на самом деле не занимает, но лишнюю секунду, учитывая, что все, что вам нужно сделать в Visual Studio, это щелкнуть по имени вашего частного поля и нажать Ctrl + E, и все готово.И если я делаю это вручную, то я получаю несогласованность, в которой есть НЕКОТОРЫЕ открытые свойства, созданные вручную, поддерживаемые приватными полями, и НЕКОТОРЫЕ автоматически реализуемые свойства.Я чувствую себя намного лучше, когда все работает одинаково, либо в автоматическом, либо в ручном режиме.
Это только я?Я что-то пропустил?Я ошибаюсь в чем-то?Я уделяю слишком много внимания последовательности?Я всегда могу найти законные обсуждения возможностей C #, и почти всегда есть плюсы и минусы во всем, но в этом случае я действительно не смог найти никого, кто бы рекомендовал не использовать автоматически реализуемые свойства.