C'est un peu pédant, mais j'ai vu certaines personnes utiliser Id
comme dans:
private int userId;
public int getUserId();
et d'autres utilisent:
private int userID;
public int getUserID();
L'un de ces noms est-il meilleur que l'autre? Pourquoi? J'ai vu cela se faire de manière très inconsistante dans les grands projets. Si je devais établir une norme à laquelle la plupart des gens seraient familiers? Quelle est la norme conventionnelle?
SAXParser
etDOMException
, .NET noms de classesXmlDocument
. Sur cette base, je dirais "ID" en Java, "Id" en C #.EGO
etSuperEGO
? Je ne le pensais pas. ;)Réponses:
La règle la plus importante à suivre dans ces cas est la cohérence: faites comme tout le monde.
Par exemple, examinez les API XML de votre langue pour voir comment elles procèdent.
Les classes de noms Java comme SAXParser et DOMException , les classes de noms .NET comme XmlDocument .
Sur cette base, je dirais "ID" en Java, "Id" en C #.
Cependant, j'ai vu que Java EE 6 avait une annotation nommée
@Id
(voir la documentation ), il semble donc que Java considère "Id" comme un mot normal.la source
@Id
dit que c'est un seul mot, donc le nom de la variable serait "id".Id
en C # (et .NET en général), mais pour une raison différente. La règle met en majuscule toutes les lettres d'un acronyme de 2 lettres (par exempleIPAddress
) et en majuscule la première lettre d'un acronyme plus long (comme dans l'exemple queXmlDocument
vous avez donné). MaisId
etOk
sont les exceptions à cette règle, spécifiquement mentionnées. Pour le mémoire complet, voir laCapitalization Rules for Acronyms
section de l'Capitalization Conventions
article. Mais même Microsoft enfreint cette règle (par exemple,DbConnection
contreDBNull
)La cohérence est roi. choisissez l’un ou l’autre, mais faites-le partout.
Cela dit, je préfère la première variante, car elle ne viole pas camelCase (cela signifie que vous devez vous rappeler deux règles de style, pas une seule).
Deux lettres majuscules sont parfois utilisées pour cette raison , mais une carte d'identité n'est en réalité qu'une forme d'identification.
la source
userIdOfSender
SenderUserId
TL; DR: dans le contexte des bibliothèques de classe .NET, Microsoft vous recommande d'utiliser Id. Ceci est légèrement contre-intuitif, car il s'agit d'un exemple rare d'abréviation autorisée / recommandée (les abréviations sont généralement mal vues).
Si nous parlons de conventions de bibliothèques de classes C # ou .NET, Microsoft dispose de directives de dénomination assez bien définies . Ils sont bien pensés, avec de nombreuses explications sur une variété de problèmes - en fait, chaque développeur devrait prendre un certain temps pour lire l'intégralité de la section des directives de conception .
En ce qui concerne les acronymes , la règle générale est la suivante: pour les acronymes à deux lettres, vous avez tendance à les conserver en majuscules (lorsque le cas Pascal est applicable), par exemple, il
IOStream
peut s'agir du nom d'une classe. Pour un acronyme plus long, vous mettez en minuscule le reste de l'acronyme, par exempleXmlDocument
ouHtmlParser
. Il s’agit en fait d’une règle généralement non ambiguë (il n’ya pas de confusion quant à la fin et à la fin du mot suivant, sauf si vous enchaînez des acronymes à deux lettres), et vous vous y habituerez très rapidement.Alors, est-ce un identifiant ou un identifiant? Eh bien, selon Microsoft, ce n'est peut-être pas ce que vous pensez:
De manière anecdotique, je ne sais pas vraiment quand cette distinction a commencé à apparaître dans les directives, mais il y a quelques années (environ 3,0 / 3,5), la tendance générale en matière de nommage dans les bibliothèques de classes est passée de ID à Id.
la source
J'ai lu une très bonne explication dans le document de certaines conventions de codage. CamelCase doit toujours être utilisé pour les acronymes et les abréviations, car il est plus facile de distinguer les limites des mots (comparer
XmlIdWriter
auxXMLIDWriter
).la source
xml_id_writer
.Comme nous pouvons le voir dans la fonction par défaut de JavaScript getElementById (); Id est écrit dans l'affaire Camel ...
Utilisez 'id' si vous utilisez un trait de soulignement. Exemple: id_utilisateur
Utilisez 'Id' si vous nommez une var sans trait de soulignement pour différencier les différents mots. Exemple: userId
Si c'est une seule variable mot, il doit être en minuscule, si plusieurs mots var, utilisez une casse inférieure. Exemple: thisIsExample
Mais je ne recommanderais pas fortement «ID» dans CAPS car nous utilisons généralement des majuscules pour définir CONSTANTS.
la source
Tout d'abord, évitez les abréviations.
Deuxièmement, si l’abréviation est super bien connue, je recommande d’utiliser un étui camel.
C'est parce que vous n'avez pas besoin de considérer le sens de cela. juste traiter comme un mot normal
la source