約3分で読めます
camelCase・snake_case・kebab-case・PascalCaseの違いと使い分け
命名規則(ケース)とは
プログラミングでは、複数の単語をつなげて変数名や関数名を作ります。スペースが使えないため、単語の区切りをどう表現するかの流儀が「命名規則(ケース)」です。代表的な4種類を押さえましょう。
4つの主要なケース
| ケース | 例 | 区切り方 |
|---|---|---|
| camelCase | userName |
2語目以降の先頭を大文字 |
| PascalCase | UserName |
すべての単語の先頭を大文字 |
| snake_case | user_name |
アンダースコアで区切る |
| kebab-case | user-name |
ハイフンで区切る |
camelCaseはラクダの背中、kebab-caseは串刺しのケバブが名前の由来です。
言語・用途ごとの使い分け
ケースは「好み」で選ぶのではなく、言語やコミュニティの慣習に合わせるのが基本です。
- camelCase — JavaScript / Java の変数・関数名。最も広く使われる
- PascalCase — クラス名・型名・コンポーネント名(React等)。「型っぽいもの」に使う
- snake_case — Python / Ruby の変数・関数名、SQLのカラム名、定数(大文字の
MAX_SIZE) - kebab-case — URLのスラッグ、CSSのクラス名、HTML属性、ファイル名
なぜ使い分けが重要か
例えばJavaScriptの変数に user-name は使えません(- は引き算と解釈される)。CSSでは逆に kebab-case が標準です。環境ごとの「正しいケース」を外すと動かないこともあるため、慣習に従うことが大切です。
相互変換のコツ
API(snake_case)からJavaScript(camelCase)へデータを受け取るときなど、ケースの変換は頻繁に発生します。考え方はシンプルで、いったん「単語の配列」に分解してから、目的のケースで連結し直します。
- 区切り(大文字・
_・-)で単語に分解する - すべて小文字に正規化する
- 目的のケースのルールで連結する
手作業だとミスしやすいので、まとめて変換するならケース変換ツールが便利です。テキストを貼り付けるだけで、4種類すべてのケースに一括変換できます。
チームでの統一
個人の好みよりも、プロジェクト全体での統一が読みやすさを生みます。ESLintやPrettierなどのツールで命名規則をルール化しておくと、レビューでの指摘が減り、コードベース全体の一貫性が保たれます。
まとめ
- 主要なケースは camelCase / PascalCase / snake_case / kebab-case の4つ
- 言語・用途ごとに慣習が決まっている(JSはcamel、Pythonはsnakeなど)
- URLやCSSはkebab、クラス・型名はPascalが定番
- 変換は「単語に分解 → 連結し直す」が基本。ケース変換ツールで一括変換できる