To trochę pedantyczne, ale widziałem, jak niektórzy ludzie używają Id
:
private int userId;
public int getUserId();
i inni używają:
private int userID;
public int getUserID();
Czy jedno z nich jest lepsze niż drugie? Dlaczego? Widziałem to bardzo niekonsekwentnie w dużych projektach. Gdybym ustalił standard, który zna większość ludzi? Który jest standardem?
SAXParser
i.DOMException
Nazwy klas .NET jakXmlDocument
. Na tej podstawie powiedziałbym „ID” w Javie, „Id” w C #.EGO
iSuperEGO
? Nie myślałem tak. ;)Odpowiedzi:
Najważniejszą zasadą, której należy przestrzegać w tych przypadkach, jest konsekwencja: Postępuj tak, jak wszyscy inni.
Na przykład spójrz na interfejsy API XML swojego języka, aby zobaczyć, jak to robią.
Klasy nazw Java, takie jak SAXParser i DOMException , klasy nazw .NET, takie jak XmlDocument .
Na tej podstawie powiedziałbym „ID” w Javie, „Id” w C #.
Widziałem jednak, że Java EE 6 ma adnotację o nazwie
@Id
(patrz dokumentacja ), więc wygląda na to, że Java uważa „Id” za zwykłe słowo.źródło
@Id
mówi, że jest to pojedyncze słowo, więc nazwa zmiennej to „id”.Id
w C # (i .NET w ogóle), ale z innego powodu. Reguła polega na pisaniu wielkimi literami dwuliterowego akronimu (np.IPAddress
) I tylko pisaniu pierwszej litery dłuższych akronimów (jak podany przezXmlDocument
ciebie przykład ). AleId
iOk
są wyjątki od tej reguły, konkretnie wspomniane. Pełen opis znajduje się wCapitalization Rules for Acronyms
sekcji tegoCapitalization Conventions
artykułu. Ale nawet Microsoft łamie tę zasadę (np.DbConnection
Vs.DBNull
)Konsekwencja jest królem; wybierz jedno lub drugie, ale rób to konsekwentnie wszędzie.
To powiedziawszy, wolę pierwszą odmianę, ponieważ nie narusza camelCase (robienie tego oznacza, że musisz zapamiętać dwie reguły stylu, nie tylko jedną).
Z tego powodu czasami używane są dwie wielkie litery , ale identyfikator jest tak naprawdę tylko formą potwierdzenia tożsamości.
źródło
userIdOfSender
SenderUserId
TL; DR: W kontekście bibliotek klas .NET firma Microsoft zaleca używanie identyfikatora. Jest to nieco sprzeczne z intuicją, ponieważ jest to rzadki przykład skrótu, który jest dozwolony / zalecany (skróty są zwykle odrzucane).
Jeśli mówimy o konwencjach bibliotek klas C # lub .NET, Microsoft ma pewne dość dobrze zdefiniowane wytyczne dotyczące nazewnictwa . Są dobrze przemyślane i zawierają wiele wyjaśnień na różne tematy - w rzeczywistości każdy programista powinien poświęcić trochę czasu na przeczytanie całej sekcji Wytycznych projektowych .
Jeśli chodzi o akronimy , ogólna zasada jest taka: w przypadku akronimów dwuliterowych zwykle używasz wielkich liter (tam, gdzie ma zastosowanie
IOStream
wielkość Pascala), więc np. Może to być nazwa klasy. W przypadku dłuższego akronimu, mała część reszty akronimu, np .XmlDocument
LubHtmlParser
. W rzeczywistości jest to w większości jednoznaczna zasada (nie ma zamieszania co do tego, gdzie kończy się jedno słowo, a następne zaczyna, chyba że tworzysz dwuliterowe akronimy) i przyzwyczajasz się do niego bardzo szybko.Czy to jest identyfikator czy identyfikator? Cóż, według Microsoftu, może nie być tak, jak myślisz:
Anegdotycznie nie jestem pewien, kiedy to rozróżnienie zaczęło pojawiać się w wytycznych, ale kilka lat temu (około 3,0 / 3,5) ogólny trend nazewnictwa w bibliotekach klas zmienił się z ID na Id.
źródło
Przeczytałem bardzo dobre wyjaśnienie w dokumencie niektórych konwencji kodujących. CamelCase należy zawsze używać w przypadku akronimów i skrótów, ponieważ łatwiej jest odróżnić granice słów (porównać
XmlIdWriter
doXMLIDWriter
).źródło
xml_id_writer
.Jak widzimy w domyślnej funkcji JavaScript getElementById (); Identyfikator jest zapisany w etui na wielbłąda ...
Użyj „id”, jeśli używasz ze znakiem podkreślenia. Przykład: identyfikator_użytkownika
Użyj „Id”, jeśli nazywasz var bez podkreślenia, aby rozróżnić różne słowa. Przykład: userId
Jeśli jest to zmienna składająca się z jednego słowa, powinna być zapisana małymi literami, jeśli zmienna składa się z wielu słów, użyj małej litery Camel. Przykład: thisIsExample
Ale zdecydowanie nie poleciłbym „ID” wszystkich w CAPS, ponieważ generalnie używamy wszystkich wielkich liter do definiowania KONSTANCJI.
źródło
Po pierwsze, unikaj skrótu.
Po drugie, jeśli skrót jest bardzo dobrze znany, zalecam stosowanie futerału na wielbłąda.
To dlatego, że nie musisz brać pod uwagę tego znaczenia. traktuj to jak normalne słowo
źródło