プログラミングにおけるキャメルケース、スネークケース、その他の命名規則を解説!
こんにちは。ゆうせいです。
プログラミングでは、変数名や関数名を付けるときに「命名規則」を意識することがとても重要です。
なぜなら、統一感のあるコードは可読性が高く、他のエンジニアが理解しやすくなるからです。
今回は、プログラミング初心者が知っておくべき キャメルケース(CamelCase)、スネークケース(snake_case)、ケバブケース(kebab-case)、パスカルケース(PascalCase) などの命名規則を詳しく解説します!
1. キャメルケース(CamelCase)
キャメルケースとは、単語の区切りを大文字にする命名方法です。ラクダ(キャメル)のコブのように見えることから CamelCase と呼ばれています。
種類
キャメルケースには以下の2種類があります。
1.1 ローワーキャメルケース(lowerCamelCase)
- 最初の単語は小文字、次の単語の先頭を大文字にする
- 例:
int userAge;
String firstName;- 主に使われる場面
- Java や JavaScript の 変数名、関数名
- C++ などのメソッド名
1.2 アッパーキャメルケース(UpperCamelCase、PascalCase)
- 各単語の先頭をすべて大文字にする
- 例:
class UserProfile { ... }
struct EmployeeData { ... }- 主に使われる場面
- クラス名
- 構造体(struct)名
- C# のメソッド名
どんな言語で使われる?
- Java、JavaScript、C++、C#、Swift など
2. スネークケース(snake_case)
スネークケースとは、単語を「アンダースコア( _ )」で区切る命名方法です。
「ヘビ(スネーク)が這っているように見える」ことから snake_case と呼ばれます。
種類
スネークケースにも 2種類 あります。
2.1 ローワースネークケース(lower_snake_case)
- すべて小文字で、単語をアンダースコアでつなぐ
- 例:
user_age = 25
first_name = "John"- 主に使われる場面
- Python の 変数名、関数名
- C 言語の 関数名
- PostgreSQL の カラム名
2.2 アッパースネークケース(UPPER_SNAKE_CASE)
- すべて大文字で、単語をアンダースコアでつなぐ
- 例:
#define MAX_SPEED 120
const int DEFAULT_TIMEOUT = 30;- 主に使われる場面
- C 言語の定数
- Python の定数
- 環境変数(ENVIRONMENT_VARIABLE)
どんな言語で使われる?
- Python、C、Ruby、SQL など
3. ケバブケース(kebab-case)
ケバブケースとは、単語を「ハイフン( - )」で区切る命名方法です。
「串刺し(ケバブ)のように見える」ことから kebab-case と呼ばれます。
例
<div class="user-profile"></div>
background-color: blue;
主に使われる場面
- HTML、CSS のクラス名
- URL のパス
- 例:
https://example.com/user-profile
- 例:
どんな言語で使われる?
- HTML、CSS、URL など
4. その他の命名規則
キャメルケースやスネークケース以外にも、いくつかの命名規則があります。
4.1 ハンガリアン記法(Hungarian Notation)
- 変数の先頭に型情報を付ける
- 例:
int iCount;
char* szName;
double dAmount;- 主に使われる場面
- 昔の C 言語や Windows API で使われていたが、最近はあまり使われない
4.2 SCREAMING_SNAKE_CASE
- スネークケースのバリエーションで、すべて大文字にする
- 例:
MAX_CONNECTIONS = 100
API_KEY = "abc123"- 主に使われる場面
- 定数を表すとき
4.3 StudlyCaps
- PascalCase の変形で、意味のある部分だけ大文字にする
- 例:
$UserID = 123;- 主に使われる場面
- PHP など
5. どの命名規則を使うべき?
どの命名規則を使うかは プログラミング言語の文化やチームのルール によります。
一般的なルールをまとめると、以下のようになります。
| 命名規則 | 使われる場面 | 例 |
|---|---|---|
| lowerCamelCase | 変数、関数名(Java, JS) | getUserName() |
| UpperCamelCase(PascalCase) | クラス、構造体名 | UserProfile |
| lower_snake_case | Pythonの変数・関数 | get_user_name() |
| UPPER_SNAKE_CASE | 定数 | MAX_LIMIT |
| kebab-case | CSSのクラス名、URL | background-color |
| Hungarian Notation | 昔のC言語 | szUserName |
6. まとめ
- キャメルケース(CamelCase):単語の先頭を大文字にする(lowerCamelCase, UpperCamelCase)
- スネークケース(snake_case):単語をアンダースコア(_)で区切る(lower_snake_case, UPPER_SNAKE_CASE)
- ケバブケース(kebab-case):単語をハイフン(-)で区切る(主にHTMLやCSS)
- その他の命名規則:ハンガリアン記法、SCREAMING_SNAKE_CASE、StudlyCaps など
エンジニアとしてコードを書くときは、 チームや言語のルールに従うことが大切 です!
統一された命名規則を使うことで、コードの可読性が向上し、チーム開発がスムーズになります。
最初は意識しないと混乱するかもしれませんが、使い続ければ自然に身につくので、ぜひ実践してみてください!