プログラミング言語はスネークケースかキャメルケースのどちらかをとる傾向にあります。スネークケースはアンダーラインで単語を区切り、キャメルケースは単語と単語をそのままつなげてしまうことが特徴です。
スネークケース … アンダーラインで区切る
キャメルケース … そのままつなげる
例えば get random number という関数をスネークケースとキャメルケースで表すと
スネークケース
get_random_number
キャメルケース
getRandomNumber
となります。スネークケースは単語と単語の間にくぼみがあるように見え、キャメルケースはドイツ語のようにアルファベットが長く続きます。キャメルケースは単語を大文字から始めることで、単語と単語の区切りをはっきりさせています。もしなにもしないと
getrandomnumber
となって、一目で判断することが難しくなってしまいます。
スネークケース
すべての単語を小文字にして、単語と単語はアンダーラインでつなげる。
例
- push_back
- get_terminate
- array_filter
push_back と get_terminate は C++ で実際に使われている関数です。C、C++、Python、PHP などは変数や関数でスネークケースを採用しています。
使用言語
- C
- C++
- Python
- PHP
使われる場面
- 変数
- 関数
キャメルケース
最初の単語を小文字から始めて、それ以外の単語を大文字から始める。
例
- isEmpty
- navigationBar
isEmpty は Java の String にある関数(メソッド)です。navigationBar は Swift のプロパティ(変数)です。Swift などの言語では、変数や関数をキャメルケースで書きます。クラスや定数などに使うことはほとんどありません。
使用言語
- Java
- C#
- Swift
- JavaScript
使われる場面
- 変数
- 関数
パスカルケース
すべての単語を大文字から始めて、単語と単語はそのままつなげる。
例
- ArrayList
- OrderedDict
パスカルケースは一般的に変数や関数に使いません。スネークケース系の言語もキャメルケース系の言語も、クラスはだいたいパスカルケースで書きます。
ArrayList は Java のクラス、OrderedDict は Python のクラスです。Java と Python はそれぞれキャメルケース系、スネークケース系を代表する言語ですが、クラスは同じルールで命名されています。
初めてプログラミング言語を学ぶ方はクラス名はパスカルケースで書くことを意識しましょう。変数や関数をパスカルケースで書かないことが重要です。
アッパーケース
すべての単語をすべて大文字にして、単語と単語はアンダーラインでつなげる。
例
- ALLOWED_HOSTS
- LANGUAGE_CODE
- POST
ALLOWED_HOSTS と LANGUAGE_CODE は Python のライブラリにある特殊な変数(定数)です。グローバル変数や定数にアッパーケースを使います。
アッパーケースは基本的に「むやみに使ってはいけない命名」で、「その変数が他の変数と明らかに性質が異なること」を明示するときに使います。Google Java Style Guide では定数をアッパーケースで書くように述べています。
使われる場面
- グローバル変数
- 定数