Почему Microsoft предлагает использовать свойства для типов данных stati c, а не для полей stati c? - PullRequest
1 голос
/ 18 февраля 2020

это все еще актуально?

Рекомендуется по возможности использовать свойства stati c вместо полей publi c stati c.

Если да, то почему?

РЕДАКТИРОВАТЬ: Я не думаю, что это вопрос, основанный на мнении, когда мы просим разъяснить , почему Стиль кодирования Microsoft определяется таким, какой он есть.

1 Ответ

5 голосов
/ 18 февраля 2020

В связанной статье есть еще одна ссылка, Руководство по использованию полей , содержащая это объяснение:

Не используйте поля экземпляров, которые являются общедоступными c или защищены ( Publi c или Защищено в Visual Basi c). Если вы избегаете выставлять поля непосредственно разработчику, классы могут быть более легкими для управления версиями, потому что поле нельзя изменить на свойство при сохранении двоичной совместимости.

Это относится как к полям stati c, так и к в нестатические поля / поля экземпляра. Это означает, что вы можете позже изменить способ установки или получения поля, поддерживающего свойство, не нарушая зависимостей.
Если вы выпустили класс с полем publi c, вы никогда не сможете изменить его, не потревожив разработчиков, уже обращающихся к этому полю.

...