Это немного педантично, но я видел, как некоторые люди используют Id
как:
private int userId;
public int getUserId();
и другие используют:
private int userID;
public int getUserID();
Одно из них лучше, чем другое? Почему? Я видел, что это было сделано очень непоследовательно в больших проектах. Если бы я установил стандарт, с которым большинство людей были бы знакомы? Какой стандарт является стандартным?
SAXParser
иDOMException
.NET называет классы какXmlDocument
. Исходя из этого, я бы сказал «ID» в Java, «Id» в C #.EGO
иSuperEGO
? Я так не думаю. ;)Ответы:
Самым важным правилом, которому нужно следовать в этих случаях, является последовательность: делай как все.
Например, посмотрите на XML API вашего языка, чтобы увидеть, как они это делают.
Классы имен Java, такие как SAXParser и DOMException , классы имен .NET, такие как XmlDocument .
Исходя из этого, я бы сказал «ID» в Java, «Id» в C #.
Тем не менее, я видел, что Java EE 6 имеет именованную аннотацию
@Id
(см. Документацию ), поэтому кажется, что Java считает «Id» обычным словом.источник
@Id
говорит, что это одно слово, поэтому имя переменной будет "id".Id
в C # (и .NET в целом), но по другой причине. Правило состоит в том, что все буквы двухбуквенного аббревиатуры (напримерIPAddress
) пишутся с заглавной буквы, и только заглавные буквы более длинных аббревиатур (как в приведенномXmlDocument
вами примере ). НоId
иOk
есть исключения из этого правила, специально упомянутые. Для полного резюме, см.Capitalization Rules for Acronyms
РазделCapitalization Conventions
статьи. Но даже Microsoft нарушает это правило (например,DbConnection
противDBNull
)Последовательность является королем; выберите один или другой, но делайте это последовательно везде.
Тем не менее, я предпочитаю первый вариант, потому что он не нарушает camelCase (это означает, что вы должны помнить два правила стиля, а не только одно).
Из-за этого иногда используются две заглавные буквы , но идентификатор на самом деле является просто формой идентификации Id.
источник
userIdOfSender
SenderUserId
TL; DR: в контексте библиотек классов .NET Microsoft рекомендует использовать Id. Это немного нелогично, так как это редкий пример аббревиатуры, которая разрешена / рекомендована (аббревиатуры обычно не одобряются).
Если мы говорим о соглашениях библиотек классов C # или .NET, у Microsoft есть довольно четко определенные правила именования . Они хорошо продуманы, со множеством объяснений по различным вопросам - на самом деле, каждому разработчику нужно некоторое время, чтобы прочитать весь раздел Руководства по проектированию .
Когда дело доходит до аббревиатур , эмпирическое правило таково: для двухбуквенных акронимов вы, как правило, держите их в верхнем регистре (где применяется регистр Паскаля), поэтому, например,
IOStream
может быть именем класса. Для более длинного аббревиатуры вы должны использовать нижний регистр остальной аббревиатуры, например,XmlDocument
илиHtmlParser
. На самом деле это в основном однозначное правило (нет никакой путаницы относительно того, где заканчивается одно слово и начинается следующее, если вы не объединяете двухбуквенные аббревиатуры), и вы очень быстро привыкаете к нему.Так это идентификатор или идентификатор? Ну, по словам Microsoft, это может быть не то, что вы думаете:
Как ни странно, я не совсем уверен, когда это различие стало появляться в руководствах, но несколько лет назад (около 3.0 / 3.5) общая тенденция именования в библиотеках классов перешла от ID к Id.
источник
Я прочитал очень хорошее объяснение в документе некоторых соглашений по кодированию. CamelCase всегда следует использовать для сокращений и аббревиатур, потому что легче различать границы слов (сравнивать
XmlIdWriter
сXMLIDWriter
).источник
xml_id_writer
,Как мы видим в JavaScript-функции по умолчанию getElementById (); Идентификатор написано в случае верблюда ...
Используйте 'id', если используете с подчеркиванием. Пример: user_id
Используйте «Id», если называете переменную без подчеркивания, чтобы различать разные слова. Пример: userId
Если это переменная, состоящая из одного слова, она должна быть в нижнем регистре, если несколько слов var, тогда использовать нижний регистр Camel. Пример: thisIsExample
Но я бы не рекомендовал использовать «ID» в CAPS, потому что мы обычно используем все ограничения для определения CONSTANTS.
источник
Во-первых, избегайте аббревиатур.
Во-вторых, если аббревиатура очень хорошо известна, я рекомендую использовать верблюжий чехол.
Это потому, что вам не нужно учитывать значение этого. просто относись как к нормальному слову
источник