Я собираюсь поработать над небольшим количеством кода C # самостоятельно, но я хочу убедиться, что я следую наиболее широко принятым соглашениям об именах на случай, если я захочу привлечь других разработчиков, выпустить свой код или продать свойкод.Прямо сейчас я следую соглашению об именах, которое Microsoft установило, поскольку они кажутся наиболее широко принятыми.Единственная вещь, которую они не упоминают, это названия частных полей.По большей части я видел их имена в camelCase, как защищенные поля, однако это создает проблему, поскольку имена параметров должны быть в camelCase.Возьмем, к примеру, следующий конструктор:
public GameItem(string baseName, string prefixName, string suffixName)
{
//initialize code
}
Теперь, если я использую camelCase для приватных полей, возникает конфликт имен, если я не использую «this» для доступа к полям класса (что я считаю противбольшинство стандартов не упоминать означает больше печатать).Одно из решений состоит в том, чтобы дать параметру другое имя, но это не имеет логического смысла давать одинаковые данные двум различным именам.Единственное другое решение, которое я знаю об этом, было распространено в кодировании C ++ - это дать частным членам подчеркивание в начале (_camelCase).Является ли это решение общепринятым с C # кодированием?Есть ли другое решение этой проблемы (например, только использование свойств (которые используют PascalCase) для доступа к полям, даже в самом классе)?