Что касается именования C# для аббревиатур, если я писал библиотеку, связанную с Windows API, существует ли какое-либо сильное соглашение по отношению к WindowsApi или WindowsAPI или это просто личные предпочтения?Соглашения о присвоении имен C# для аббревиатур
ответ
Существует соглашение, в котором указаны начальные прописные буквы, остальные строчные буквы, для всех сокращений длиной более 2 символов. Следовательно, HttpContext
и ClientID
.
Его личные предпочтения. Но .NET будет использовать WindowsApi
. Это сродни названию TcpClient
.
Я слышал, что вы должны избегать сокращений, поэтому тогда это будет WindowsApplicationProgrammingInterface
.
более серьезно (люди, кажется, неправильно чтение выше, несмотря на то ниже цитата), this page говорит:
Любые аббревиатуры из трех или более букв должны быть Паскаль случае, не все прописными.
Поскольку API считается известным аббревиатурой, имя WindowsApi
является тем, которое нужно выбрать, если вы хотите следовать рекомендациям.
Аббревиатуры одобрены, если они хорошо известны в домене. API хорошо известен в рамках программирования. –
+1. В книге «Руководства по основам» рекомендуется избегать аббревиатур или сокращений или использовать PascalCase. Я бы предложил WindowsApi. Пример из структуры: Uri, UriBuilder HtmlDecode. – Skurmedel
@John: Да, я был немного щекотан на этом. :) – unwind
Все это просто личное (или организационное) предпочтение. Пока вы согласны, с вами все будет в порядке.
В самой .NET Framework будет использоваться WindowsApi.
Проверить майкрософт официальные рекомендации по именованию здесь Naming Guidelines
Этот документ предназначен для .NET 1.1. –
Не понимаю, какая разница? Не похоже, что они изменили соглашения между каждой версией или чем-то еще. – Skurmedel
Там _is_ второе издание книги по руководству проектами. Я не сравнил, чтобы определить, что никаких изменений вообще нет в именовании. –
"Framework Design Guidelines" второе издание по Кшиштоф Квалина и Брэд Абрамс pp.40-42
3.1.2 ИНВЕСТИЦИОНННЫЕ Сокращения
DO капитализировать оба символа на двухсимвольных акронимах, за исключением первого слова идентификатора с верблюжьей линией.
System.IO
public void StartIO(Stream ioStream)
DO капитализировать только первый символ аббревиатур с тремя или более символов, за исключением первого слова верблюд-обсаженных идентификатора.
System.Xml
public void ProcessHtmlTag(string htmlTag)
НЕ капитализировать любые символы любых аббревиатур, независимо от их длины, в начале верблюда-обсаженных идентификатора.
Посмотрите также на FxCop. Это хорошая утилита, которая поможет в таких проблемах.
Ставка ¥ особые пометки Для покупок необходима авторизация Старый вопрос, новый ответ.
В соответствии с «Капитализация правил сокращений» раздела MSDN Capitalization Conventions статьи:
ли капитализировать как символы двух символов аббревиатур, кроме первого слова верблюд-обсаженных идентификатора.
Свойство имени
DBRate
является примером короткой аббревиатуры (DB
), используемой в качестве первого слова в Паскаль-обсаженный идентификатор. Параметр с именемioChannel
является примером краткого акронима (IO
), используемого в качестве первого слова идентификатора с верблюжьей линией.Употребляйте только первый символ аббревиатур с тремя или более символами , за исключением первого слова идентификатора с верблюжьей линией.
Класс с именем
XmlWriter
является примером длинного аббревиатуры, используемого как первое слово идентификатора с паскалем. Параметр с именемhtmlReader
является примером длинного аббревиатуры, используемого в качестве первого слова идентификатора верблюжьего кода .Не заглавные буквы любых аббревиатур, любых , их длина, в начале идентификатора с верблюжьей линией.
Параметр имени
xmlStream
является примером длинной аббревиатурой (xml
) используется в качестве первого слова верблюда-обсаженных идентификатора. Параметр с именемdbServerName
является примером короткого акронима (db
), используемого в качестве первого слова с идентификатором на верблюжьей основе.
- 1. Соглашения о присвоении имен Oracle
- 2. Соглашения о присвоении имен для числовых функций?
- 3. Соглашения о присвоении имен макросов макроса SAS
- 4. Соглашения о присвоении имен Laravel Eloquent ORM
- 5. Соглашения о присвоении имен темингам комментариев
- 6. Objective-C: C Соглашения о присвоении имен макросов
- 7. Название соглашения о присвоении имен stdlib C/C++?
- 8. Соглашения о присвоении имен C#: ToSomething vs. AsSomething
- 9. Соглашения о присвоении имен C: структура и функция
- 10. sid соглашения о присвоении имен для контейнера и плагинов
- 11. Action Соглашения о присвоении имен для шаблонов в Rails 4
- 12. Соглашения о присвоении имен Rails для моделей с запрещенными именами
- 13. Соглашения о присвоении имен WCF для методов и URI?
- 14. Файл ресурса (.resx) Основные соглашения о присвоении имен?
- 15. Соглашения о присвоении ярких отношений
- 16. Ameritrade API Streaming Futures - Соглашения о присвоении имен символам?
- 17. Соглашения о присвоении имен DAL и BLL альтернативы другим народам
- 18. Соглашения о присвоении имен CakePHP в именах таблиц
- 19. Соглашения о присвоении имен уровням и доменам классов
- 20. Соглашения о присвоении имен Java: слишком много геттеров
- 21. Соглашения о присвоении имен Java и правильность английского языка
- 22. Соглашения о присвоении имен Java-методам toType и asType различия?
- 23. Соглашения о присвоении имен DataMapper с существующей таблицей MySQL
- 24. соглашения о присвоении имен ruby могут содержать символы верхнего регистра
- 25. Соглашение о присвоении имен Java
- 26. Конвенция о капитализации/присвоении имен для управления
- 27. Конвенция о присвоении имен .NET для пространств имен
- 28. стандартный документ о присвоении имен Visual Studio C#?
- 29. Соглашения о присвоении имен C# для переменных, когда у меня есть базовый класс?
- 30. Конвенция о присвоении имен CodeIgniter для интерфейсов
Id - предпочтительная капитализация. «Два других термина, которые находятся в общем использовании, относятся к категории сами по себе, потому что они являются общими сокращениями сленга. Два слова« Ok »и« Id »(и они должны быть обведены так, как показано), являются исключениями в руководстве, что нет аббревиатуры следует использовать в именах ". «Руководство по разработке рамок» 2-е издание, стр.44. –
Кто-то отметил, что если идентификатор означает «Идентификация базы данных» (а не «Идентификатор»), идентификатор снова будет в порядке. Извини, Ладно. – peterchen
@Sergey Teplyakov Руководства Microsoft говорят, что использовать Pascal только для аббревиатур более 2 символов. В случае с идентификатором и ОК все кепки в порядке, однако HTML становится Html. http://msdn.microsoft.com/en-us/library/141e06ef(v=VS.71).aspx – smdrager