CamelCasing: HTMLReport vs. HtmlReport - PullRequest
9 голосов
/ 16 июня 2011

Часто в именах классов или методов вы используете хорошо или несколько устоявшиеся сокращения. Но как вы CamelCase или CamelBack их? ​​

  • HTMLReport против HtmlReport
  • CustomerDAO против CustomerDao
  • XMLRPC против XmlRpc

Какая сторона верна (или какую вы бы предпочли)?

Ответы [ 5 ]

2 голосов
/ 16 июня 2011

В Java нет небольшого выбора, если вы хотите трактовать HTML как одно слово, его нужно записать как html или html.Например, из-за соглашения Java-бинов, getHTML() подразумевает свойство с именем hTML.

Ответ на этот вопрос должен ответить оппонент. Почему HTML должен быть написан заглавными буквами?Английская конвенция?Какая разница?Если мы следуем английскому соглашению, у нас должны быть пробелы между словами.

1 голос
/ 16 июня 2011

Нет правильного ответа на этот вопрос.Самое главное, что вы последовательны.Это раздражает, когда некоторые классы XMLMyClass, а другие XmlMyOtherClass, и вы используете функции автозаполнения IDE, поскольку два связанных класса, имеющие одинаковые имена, не отображаются рядом друг с другом.

Какличное предпочтение, в общем, мне нравится использовать заглавную букву только в первой букве аббревиатуры, если только аббревиатура не оканчивает название.Если это заканчивает название тогда, я думаю, что все заглавные буквы для этого хороши.Я говорю это по двум причинам.

  1. Трудно разобрать, где аббревиатура заканчивается, если она начинается или находится в середине слова и находится во всех заглавных буквах.Для хорошо известных аббревиатур это не такая уж большая проблема, но если вы создаете новые аббревиатуры, их может быть сложнее читать.
  2. Вы не сталкиваетесь с акронимами спина к спине, создавая все заглавные буквы, как в вашем случае XMLRPC,

То, что, как говорится, хорошая стратегия использования при принятии решений, я придерживаюсь соглашений стандартной библиотеки языка.

Например, так как вы пометили это с помощью C #и Java, мы можем посмотреть, как эти языки обрабатывают аббревиатуры.

  • C # содержит только первую букву аббревиатуры, как в XmlReader

  • В Java все буквы заглавные, как в XMLStreamReader

1 голос
/ 16 июня 2011

camelCasing не использует заглавную букву в первой букве, это PascalCasing - у меня нет проблем с HTMLReport, но я обнаружил, что соглашения о присвоении имен многих компаний указывают другой путь: HtmlReport, без нескольких букв подряд.

1 голос
/ 16 июня 2011

Я предпочитаю позже.в конце концов, html становится словом, а не аббревиатурой.

0 голосов
/ 16 июня 2011

Я бы сказал, что это зависит. XML и HTML могут быть верблюжьими. DAO - это более «строгое» сокращение, и, вероятно, оно должно быть прописным

...