Соглашения об именах C # для сокращений - PullRequest
58 голосов
/ 21 января 2010

Что касается именования аббревиатур в C #, если я писал библиотеку, связанную с Windows API, существует ли строгое соглашение в отношении WindowsApi или WindowsAPI или это просто личные предпочтения?

Ответы [ 8 ]

56 голосов
/ 21 января 2010

Существует соглашение, и оно определяет начальный верхний регистр, остальные строчные, для всех сокращений длиной более 2 символов. Отсюда HttpContext и ClientID.

33 голосов
/ 21 января 2010

" Руководство по проектированию рамок " 2-е издание, Кшиштоф Квалина и Брэд Абрамс, стр. 40-42

3.1.2 Прописные сокращения

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

System.IO
public void StartIO(Stream ioStream)

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

System.Xml
public void ProcessHtmlTag(string htmlTag)

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

9 голосов
/ 21 января 2010

Ознакомьтесь с официальными рекомендациями Microsoft по именованию здесь Правила именования

8 голосов
/ 21 января 2010

Я слышал, что вам следует избегать сокращений, поэтому оно станет WindowsApplicationProgrammingInterface, затем.

Более серьезно (люди, кажется, неправильно читают вышеизложенное, несмотря на приведенную ниже цитату), эта страница гласит:

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

Поскольку API считается широко известнымакроним, имя WindowsApi - это то, что нужно выбрать, если вы хотите следовать рекомендациям.

6 голосов
/ 22 мая 2015

Старый вопрос, новый ответ.

В соответствии с .NET 4 Правила капитализации для сокращений :

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

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

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

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

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

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

3 голосов
/ 21 января 2010

Это всего лишь личные (или организационные) предпочтения. Пока вы последовательны, вы будете в порядке.

.NET Framework будет использовать WindowsApi.

3 голосов
/ 21 января 2010

Его личные предпочтения. Но .NET будет использовать WindowsApi. Это сродни названию TcpClient.

1 голос
/ 21 января 2010

Взгляните и на FxCop. Это хорошая утилита, которая поможет с такими проблемами.

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