読者です 読者をやめる 読者になる 読者になる

キャメルケースやスネークケースの種類

何かの命名規則の文脈で会話するとき等に知っていると便利に使えるでしょう。

  • camelCase, lowerCamelCase, PascalCaseと比較した場合のcamelCase
  • CamelCase, UpperCamelCase, PascalCase
  • chain-case, Chain-Case
  • snake_case

追記1

SCREAMING_SNAKE_CASEというものもあるみたいです。

追記2

余談ですが、QiitaではCSSセレクタ命名規則としてBEMを採用しており、端的に言うと .bloCk_elemeNt-modifiEr というパターンを取っています。Qiitaでは各要素の命名規則としてlowerCamelCaseを採用しており、BlockとElementとを接続するために「_」を、BlockとModifierとを接続するために「-」を採用しています。よって、このルールの上では以下のようなパターンを取り得ることになります。

  • .bloCk
  • .bloCk-modifiEr
  • .bloCk_elemeNt
  • .bloCk_elemeNt-modifiEr

念のために書いておくと、BEMではこの手の軽微な命名規則の変更を認めているものの、デフォルトでは各要素はchain-case、BlockとElementとの接続詞は「__」、BlockとModifierとの接続詞は「--」になっています。BlockとElementとの親子関係を表現するためにunderscoreを、Modifierとの同格の関係性を表現するためにhyphenを使っているとして表意文字のように捉えると、このBEMの命名規則がいつの日かギリギリ納得できそうな気がしています (でもぱっと見るとやっぱり気持ち悪いですよね)。

  • .blo-ck
  • .blo-ck--modifi-er
  • .blo-ck__eleme-nt
  • .blo-ck__eleme-nt--modifi-er