Akronimy w Camel Back
Często widzę nazwy klas Javy jak
XmlReader
Zamiast
XMLReader
Moje przeczucie jest do całkowicie wielkich akronimów, ale widocznie wielu ludzi myśli inaczej. A może to dlatego, że wiele generatorów kodu ma problemy z akronimami...
Chciałbym więc wysłuchać opinii publicznej. Jak zapisać nazwy klas zawierające akronimy wielką literą?6 answers
Używamy konwencji wielbłąda, jak Java i. NET do. Nie ze względu na generatory kodu, ale ze względu na czytelność. Rozważ przypadek połączenia dwóch akronimów w jednej nazwie, na przykład klasy, która konwertuje XML na HTML.
XMLHTMLConverter
Lub
XmlHtmlConverter
Który wolisz?Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-07-24 11:02:13
Dwa powody:
- łatwiej jest odróżnić, gdzie jeden akronim kończy się, a drugi zaczyna w identyfikatorach, gdzie są umieszczone po sobie, na przykład w
XmlHtmlConverter
. Teraz XML i HTML nie są takimi dobrymi przykładami, ponieważ każdy wie, czym jest XML i czym jest HTML. Ale czasami zobaczysz mniej oczywiste akronimy i wtedy staje się to ważne. - Eclipse jest inteligentny ze słowami i ich Inicjałami. Dla
XmlHtmlConverter
, możesz wpisaćXHC
w otwartym oknie dialogowym tekst, a on go znajdzie. DlaXMLHTMLConverter
Inicjały byłybyXMLHTMLC
, co jest oczywiście nieco dłuższe.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-07-24 11:09:19
Uważam, że XMLReader jest trudniejszy do odczytania. Powodem jest to, że nie można łatwo powiedzieć, gdzie słowa są rozdzielone. Uważam, że akronimy z małymi literami powinny zostać zaakceptowane. Możesz być w stanie użyć wielkich liter dla definicji klas, ale co z zmiennymi instancji:
XmlReader xmlReader;
Tutaj musisz używać małych liter i tak.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-07-24 11:02:42
Dla akronimów używam następującej reguły:
-
Jeśli akronim ma długość 2, Umieść akronim wielkimi literami.
For Ex : UIRule
-
Jeśli akronim ma większą długość, używam obudowy Pascala dla akronimu
For Ex : SmsValidation, XmlReader
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-07-24 11:03:39
Przypadek Pascala jest używany w. NET framework. So
XmlReader
Jest preferowany w środowiskach Microsoft.
Muszę się zgodzić z AronVanAmmers, że jest to łatwiejsze do odczytania, że alternatywa.
Reference: Microsoft Design Guidelines for Class Library Developers
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-07-24 11:52:21
Uważam, że ogólnie nazwy klas powinny być pisane tak, jak oczekujesz, że zostaną przeczytane. Na przykład, wypowiadając na głos nazwę klasy, powiedziałbym "x-M-L reader", więc nazwałbym klasę "XMLReader". Jednak nazwałbym hipotetyczną klasę "REST service ""RestService", ponieważ ogólnie "REST" nie jest wymawiane "R-E-S-T", ale"rest". Dla czegoś takiego jak "SQL", mógłbym pójść w obie strony, ponieważ niektórzy ludzie mówią "S-Q-L", a inni mówią "sequel". Ale to naprawdę sprowadza się do osobistego preferencje.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-12-04 14:57:39