C # имя переменной corpID против corpId - PullRequest
2 голосов
/ 05 февраля 2010

Я пытаюсь определить, должна ли локальная переменная в C # называться «corpID» или «corpId».

Видишь разницу? Должна ли буква "d" быть прописной или строчной?

Рассмотрим и это:

customerPK против customerPk

Это имеет значение больше, если другое слово добавлено в конце. Как это:

customerPKField против customerPkField

Видишь мою бред? Есть ли общепринятый способ справиться с этим?

Ответы [ 13 ]

6 голосов
/ 05 февраля 2010

С http://msdn.microsoft.com/en-us/library/ms229043.aspx:

`Примечание:

Две аббревиатуры, которые можно использовать в идентификаторах: ID и OK. В идентификаторах Pascal они должны отображаться как Id и Ok. Если они используются в качестве первого слова в идентификаторе в верблюжьей оболочке, они должны отображаться как id и ok соответственно.

4 голосов
/ 05 февраля 2010

Условные обозначения в Руководстве по именам гласят:

Две аббревиатуры, которые можно использовать в идентификаторах: ID и OK. В идентификаторах Pascal они должны отображаться как Id и Ok. Если они используются в качестве первого слова в идентификаторе в верблюжьей оболочке, они должны отображаться как id и ok, соответственно.

Это предполагает, что corpId является правильным, если это является частью открытого интерфейса класса или структуры.

Однако, если этот параметр передается в метод, то применяются правила обшивки верблюда, и:

Используйте заглавные буквы двухсимвольных сокращений, кроме первого слова идентификатора в верблюжьей клетке.

Итак, в качестве имени параметра вы бы использовали corpID .

(Лично я нахожу это странным и всегда использую corpId, но это фактическое официальное руководство ...)

3 голосов
/ 05 февраля 2010

Это дубликат .NET именования для "ID" (любая идентификация: заглавные буквы)

Из принятого ответа есть

«Идентификатор» - это аббревиатура для Идентификатора, поэтому он должен оставаться в паскалях.

2 голосов
/ 05 февраля 2010

Строчные каждый раз. Иногда это будет выглядеть очень странно, но лучше, чем альтернатива: вы создаете сравнительно больше странностей / несоответствий, постоянно принимая решение о том, стоит ли использовать заглавные буквы.

1 голос
/ 05 февраля 2010

Да, есть указания по именованию. См. http://msdn.microsoft.com/en-us/library/ms229002.aspx в целом и http://msdn.microsoft.com/en-us/library/ms229043.aspx для заглавных букв.

Ответ на ваш конкретный вопрос "corpID", скорее всего, "corporateId", в зависимости от того, что именно должен представлять этот "corp".

1 голос
/ 05 февраля 2010

Соглашение об именах .NET допускает двухсимвольные сокращения, такие как ID.

Самым важным является сохранение согласованной схемы именования во всем проекте / решении. Не используйте Id здесь и PK там, или, что еще хуже, смешайте Pk и PK.

Теперь, поскольку я всегда пишу Id, я также храню все другие сокращения в строгом стиле .NET: Pk

Edit:

Обстановка аббревиатур зависит от длины аббревиатуры. Все сокращения имеют длину не менее двух символов. Для целей настоящих руководящих принципов, если аббревиатура содержит ровно два символа, она считается короткой аббревиатурой. Аббревиатура из трех или более символов является длинной аббревиатурой.

В следующих инструкциях указан правильный корпус для коротких и длинных сокращений. Правила размещения идентификаторов имеют приоритет над правилами размещения сокращений.

Используйте заглавные буквы двухсимвольных сокращений, кроме первого слова идентификатора в верблюжьей клетке.

Свойство с именем DBRate является примером короткой аббревиатуры (DB), используемой в качестве первого слова идентификатора в Паскале. Параметр с именем ioChannel является примером короткой аббревиатуры (IO), используемой в качестве первого слова идентификатора в верблюжьей клетке.

Прописывать только первый символ аббревиатур с тремя или более символами, кроме первого слова идентификатора в верблюжьей клетке.

Класс с именем XmlWriter является примером длинной аббревиатуры, используемой в качестве первого слова идентификатора в Паскале. Параметр с именем htmlReader является примером длинной аббревиатуры, используемой в качестве первого слова идентификатора в верблюжьей клетке.

Не пишите с заглавной буквы любые символы любых сокращений, независимо от их длины, в начале идентификатора в верблюжьей клетке.

Параметр с именем xmlStream является примером длинной аббревиатуры (xml), используемой в качестве первого слова идентификатора в верблюжьей клетке. Параметр dbServerName является примером короткой аббревиатуры (db), используемой в качестве первого слова идентификатора в верблюжьей клетке.

1 голос
/ 05 февраля 2010

Я бы использовал Id и Pk для имен. На самом деле есть тема о капитализации на MSDN http://msdn.microsoft.com/en-us/library/ms229043.aspx

1 голос
/ 05 февраля 2010

Для корпорации мое личное предпочтение - корпоративный. Вы написали все слово целиком, поэтому оно не будет перепутано с частью "Id".

Однако вы должны решить, что вам больше нравится и быть последовательным. Если вы в команде, но в соответствии с командой.

0 голосов
/ 05 февраля 2010

Я бы сказал, что бы вы ни выбрали, не превращайте это в какую-то религиозную вещь. Это просто не стоит беспокоить ... (Я не говорю, что руководящие принципы кодирования бесполезны, просто этот конкретный вопрос я считаю не очень важным).

Это не значит, что corporationId более ясен или менее ясен, чем corporationID, не так ли?

0 голосов
/ 05 февраля 2010

В рекомендациях по именованию для .NET говорится, что двухбуквенные аббревиатуры должны быть в верхнем регистре, тогда как аббревиатуры с тремя или более буквами будут в паскале / верблюжьем регистре.

Это даст вам customerPK и customerPKField, поскольку PK является аббревиатурой, но с Id / ID сложнее. Это действительно аббревиатура? Для I-Dentity? Я всегда использую Id, а не ID.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...