キャメルケース(camelcase)と表記揺れ

キャメルケース(camelcase)という記述方法をご存じでしょうか?私たちマークアップエンジニアはコーディング時にclassの命名をしますよね。おそらくだいたいの会社にそれぞれのルールがあると思いますが、弊社ではclass名を記述する際「キャメルケースで記述する」としています。
ルールを決めることで複数名で制作をおこなっても表記の統一をすることが出来るのですが、ルールがない場合は人によって記述方法にばらつきが出てきます。今回はなぜそんなことが起こってしまうのか?という点に着目してみたいと思います(`・ω・´)
人によって書き方にばらつきが出るのはなぜ?
キャメルケースとは
キャメルケース(英: camelcase)は、複合語をひと綴りとして、要素語の最初を大文字で書き表すことをいう。キャメルケースとは、大文字が「らくだのこぶ」のように見えることからの命名である。
上記のように、2単語以上を組み合わせる際に、2単語目以降の最初のアルファベットを大文字にする、というのがキャメルケースです。
このルールにより弊社では表記のばらつきは起こらないのですが、ルールがない場合は制作者によって表記が異なってくる恐れがあります。
すべて小文字だったり(contentsbox)、最初のアルファベットはすべて大文字だったり(ContentsBox)、特定の単語がすべて大文字だったり(contentsBOX)、またハイフンで単語を繋げたり(contens-box)と…。
このように様々な書き方があるため、表記の揺れというものが起こるようです。
表記揺れとは
用字用語の不統一。同じ文書や書籍の中で、本来、同音・同義で使われるべき語句が異なって表記されること。「メモリー」と「メモリ」、「引っ越し」と「引越」など。表記の揺れ。
「サーバー」と「サーバ」や「バイオリン」と「ヴァイオリン」などもそうらしいです。確かにこういった違いはよく目にしますよね、ふむふむ。
どっちが適切?表記が揺れる英単語5選
キャメルケースについては置いておいて…。
ルールを作る際に少し考えてみたいのですが、以下の単語の場合みなさんどのように記述しますか?またどちらが適切だと思いますか?
- 1)XMLParser / XmlParser
- 2)getDIR / getDir
- 3)MultiThread / Multithread
- 4)Youtube / YouTube
- 5)LogIn / Login
1)XMLParser と XmlParser
エックスエムエルパーサーと読みます。
キャメルケースで書くならば「xmlParser」でOKだと思いますが、XMLって大文字で書きたくなったりしませんか…?
そういった事を考えていくとだんだんと人により書き方が異なってきます。
これは「エックスエムエル」をどう記述するかなのですが、英文のルールに沿うならば頭字語の「XML」が正解なのだそうです!
頭字語とは
語群を構成する各語の先頭の文字や音節を表す文字をつづり合わせて作った語。ユネスコ(UNESCO)・レーダー(radar)など。アクロニム(acronym)。
というわけで、XMLはExtensible Markup Languageの頭字語なので、英文的には正しいのは「XMLParser」だそうです。
〇〇的には~といっていたらキリがないので、ルールを決めるのが一番ということですね。
2)getDIR / getDir
この流れでくるとおしりの3文字「DIR/Dir」が何かの略かなと思いますよね。
しかしこれは頭字語ではなくdirectoryの省略なんですね。省略形に分類されるようです。
この記述がなんのこっちゃ分からなかった私は「getDIR」のがカッコよく見えてしっくりきてしまったんですがどうでしょうか?余談ですが、日本人は反射的に3文字の単語をすべて大文字にしたがる変な癖があるらしいですよwww
言われてみれば…そんな気もする。
ということでこの場合、英文的には「getDir」が正解!
function getDIR(); // × function getDir(); // ○
3)MultiThread / Multithread
マルチスレッドと読みます。
これは合成語(複合語)というものに分類されるそうです。
複合語とは
本来独立した単語が二つ以上結合して、新たに一つの単語としての意味・機能をもつようになったもの。「ほんばこ(本箱)」「やまざくら(山桜)」「かきあらわす(書き表す)」などの類。合成語。熟語。
この場合は頭字語でも省略形でもないので、結論からいいますとどちらも正解のようです。
つまりルールを決めるのが一番ということですね(本日2回目)。
以下、同じようなケースです。
file name / filename white space / whitespace view point / viewpoint drop down / dropdown style sheet / stylesheet multithread / multi thread log in / login
4)Youtube / YouTube
こちらは「ユーチューブ」ですが、他と違うのは固有名詞であるという点です。なので「正式名称」を使用するのがよいとのこと。
wikipediaのタイトルは正式名称を使用しているらしいので参考にするとよいかもしれません。
ちなみに「YouTube」が正式みたいです。
»http://ja.wikipedia.org/wiki/YouTube
5)LogIn / Login
最後に「ログイン」です。
これは合成語の中でも句動詞(動詞+副詞)と呼ばれるものらしく、名詞か動詞かで書き方が変わるそうです。
名詞の場合は、log-inまたはLogin
動詞の場合は、log in
以下、同じようなケースです。
[verb] [noun] fade in / fadein or fade-in log in / login or log-in set up / setup rollback / rollback - これは同じ
英文的には名詞か動詞かで変わりますが、コーディングやプログラミングの際に区別していてはルールが増えてしまいますので、こちらもルールを決めるのが一番ですね(本日3回目)!
おわりに
今回は「XMLParser vs XmlParserどちらが正解?表記が揺れるケースと対策」という記事を参考にメモさせていただきました。
この記事ではとにかくルール決めましょう!といっていますが、まさにその通りですよね。
迷った際は以下のような決め方をオススメしていました。
- 何か一つ辞書を決めて、それに従うというルールにする
- 固有名詞の場合は、wikipediaなどを参考に正式名称を使用する
全然考えたことがなかったので、なるほど~と納得させられる記事でした。こういった事にも疑問を持って生きていきたいものです(`・ω・´)
まいまいが書きました。



今日のひとこと:「トレンディーエンジェル」という芸人が好きです。