Si j'ai une variable d'identifiant utilisateur, quelle est la convention de nommage java correcte?Quelle est la convention de dénomination Java correcte pour id?
userId ou userID
Si j'ai une variable d'identifiant utilisateur, quelle est la convention de nommage java correcte?Quelle est la convention de dénomination Java correcte pour id?
userId ou userID
Je crois avoir lu quelque part que la meilleure ligne directrice est de capitaliser toujours que la première lettre d'un acronyme (par exemple, si vous avez un TTL utilisateur où TTL est un peu acronyme aléatoire dans votre projet, alors il est préférable d'écrire userTtl).
Ceci est logique, car il résout certains problèmes. Par exemple, disons que vous voulez un compteur d'identifiant utilisateur. La lisibilité de userIDCounter est pire que celle de userIdCounter. Pour un acronyme plus long, cela devient encore pire.
Cela dépend principalement de votre convention de nommage avec votre application (s'il y en a). Par exemple, userId est un préféré avec Java convention
Aucun d'entre eux ne parle d'acronymes, malheureusement. –
Votre deuxième référence, Java Language Specification et Java Virtual Machine Specification, sont des collections de documents géants. Ils ressemblent plus à des bibliothèques qu'à des livres. Seule la table des matières comporte plusieurs pages. Si vous déclarez qu'ils soutiennent votre réclamation, alors vous devriez certainement citer d'eux, et dire où exactement vous avez trouvé la citation. Dans le cas contraire, donner ces références est inutile pour le lecteur, car il lui est impossible d'utiliser la référence ou il faudrait au moins énormément de travail pour le faire, ce qui n'en vaut pas la peine. –
@DanielS. le lien était cassé et il était redirigé! –
C'est tout à fait une ressource pratique pour les conventions de nommage Java http://geosoft.no/development/javastyle.html
C'est une décision difficile, même Sun est pas sûr de ce qu'il faut faire. Regardez les classes dans JRE,
java.net.URL
java.security.acl.Acl
java.net.HttpURLConnection
java.awt.dnd.DnDConstants
java.awt.color.ICC_Profile
Personnellement, je préfère utiliser camel-case pour être cohérent.
'HttpURLConnection' - aaaaaargh. +1 – gustafc
En ce qui concerne la convention Java, il ya beaucoup de livres que la première lettre de chaque mot est capatailed et toutes les autres lettres sont en lettres minuscules, donc vous avez des classes comme AcademicStudent, ainsi que l'UserId.
Je considère l'élément décrit dans: Effective Java par Joshua Bloch faisant autorité en la matière:
Respecter généralement accepté les conventions de nommage
Les noms de classe et interface doit être constitué d'un ou plusieurs mots , avec la première lettre de chaque mot en majuscules [..] Les abréviations doivent être évitées, sauf pour les acronymes et certaines abréviations courantes comme max et min. [...] un argument fort peut être avancé en faveur de la capitalisation de la première lettre seulement. [...] vous pouvez toujours dire où un mot commence et le mot suivant se termine. Quel nom de classe préférez-vous voir, HTTPURL ou HttpUrl?
Ainsi, il devrait être userId
Il est comme ça:
userID
, il suggère qu'un id ordinaire serait iD
, et vous sûr que je ne veux pas le faire, de sorte que le gagnant est:userId
(comme d'autres ont dit). Donc, il finit par être traité comme un acronyme de toute façon.
J'aime cette réponse plus, vous devez vraiment vous dire d'ignorer les méthodes JDK qui font cela (voir la réponse de ZZ Coder) - pour moi, j'ai vu UUID.randomUUID(), bien, qu'est-ce que je nomme la variable qui revient, penserais UUID? Maintenant que je me dirige vers l'utilisation de Id il semble se démarquer moins, mais je suppose que c'est juste biais. Néanmoins je vais me conformer! –
cent pour cent d'accord. Je suis content que vous ayez soulevé cela. +1 –
De plus, cela vous permet d'éviter la question de ce qui est vraiment un acronyme et quel est un mot. Moins de temps passé à penser à des choses comme ça signifie plus de temps passé à faire fonctionner votre code correctement. –