CamelCase について疑問があります。次のような頭字語があるとします。Unesco = United Nations Educational, Scientific and Cultural Organization.
次のように記述します。unitedNationsEducationalScientificAndCulturalOrganization
しかし、頭字語を書く必要がある場合はどうすればよいでしょうか? 次のようなものになります。
getUnescoProperties();
このように書くのは正しいでしょうか?getUnescoProperties()
またはgetUNESCOProperties();
ベストアンサー1
正当な批判もあるが、マイクロソフトのアドバイス受け入れられた回答から。
- 文字数に応じて頭字語/頭字語の扱いが一貫していない:
playerID
対playerId
対playerIdentifier
。- 2 文字の頭字語が識別子の先頭に現れる場合、大文字にする必要があるかどうかという問題:
USTaxes
対usTaxes
- 複数の頭字語を区別するのが難しい:
- つまり、
USID
vsusId
(またはparseDBMXML
Wikipedia の例では)。
したがって、私は、承認された回答の代替としてこの回答を投稿します。すべての頭字語は一貫して扱われるべきであり、頭字語は他の単語と同じように扱われるべきです。Wikipediaより引用:
...一部のプログラマーは、略語を小文字の単語として扱うことを好みます...
したがって、OP の質問に関して、私は受け入れられた回答に同意します。これは正しいです:getUnescoProperties()
しかし、私は次の例では異なる結論に達すると思います:
US Taxes
→usTaxes
Player ID
→playerId
2文字の頭字語を他の頭字語と同じように扱うべきだと考えるなら、この回答に投票してください。
。
キャメルケースは仕様ではなく慣例です。したがって、一般的な意見が優先されると思います。
(編集:投票でこの問題を決定するという提案を削除します。@Brian David が言うように、Stack Overflow は「人気コンテスト」ではなく、この質問は「意見に基づく」ものとして閉じられました)
多くの人は頭字語を他の単語と同じように扱うことを好むが、より一般的な慣習は頭字語をすべて大文字にすることかもしれない(たとえそれが「忌まわしい」結果につながるとしても)
その他のリソース:
- 略語と頭字語を区別する人もいることに注意してください
- Microsoft のガイドラインでは、2 文字の頭字語と「2 文字を超える頭字語」を区別しています。
- 略語や頭字語を一切使わないように勧める人もいます。
- 一部の人々は、camelCase / PascalCaseを完全に避けることを推奨しています。
- 「一貫性」を「内部的に矛盾しているように見えるルール」(つまり、2 文字の頭字語を 3 文字の頭字語とは異なるものとして扱う)と区別する人もいます。また、「一貫性」を「同じルールを一貫して適用すること」(ルールが内部的に矛盾している場合でも)と定義する人もいます。
- フレームワーク設計ガイドライン
- Microsoft ガイドライン