プログラミング言語・フレームワーク・APIにはそれぞれ独自の命名規則があります。JavaScriptは変数にcamelCase、クラスにPascalCaseを使います。Pythonはsnake_caseを全面的に採用。CSSはkebab-caseを好みます。データベースのカラム名はsnake_caseが一般的です。複数単語の識別子を手動で変換する作業は非常に面倒ですが、テキストケース変換ツールなら一瞬で解決できます。
主なケースの種類
camelCase
単語をスペースなしで結合します。最初の単語は小文字、以降の単語の先頭を大文字にします:
userLoginCount
fetchApiResponse
isAuthenticated
使用場面:JavaScript/TypeScriptの変数・関数、JSONキー、Javaのメソッド、Swiftのプロパティ。
PascalCase(UpperCamelCase)
camelCaseと同じですが、最初の単語も大文字で始めます:
UserLoginCount
FetchApiResponse
IsAuthenticated
使用場面:JavaScript/TypeScriptのクラス名、Reactコンポーネント名、C#の型、Pythonのクラス名。
snake_case
アンダースコアで単語を区切り、すべて小文字にします:
user_login_count
fetch_api_response
is_authenticated
使用場面:Pythonの変数・関数、Ruby、PostgreSQLのカラム名、PHP、Rustの定数(SCREAMINGバリアントあり)。
SCREAMING_SNAKE_CASE
snake_caseと同じですが、すべて大文字にします:
USER_LOGIN_COUNT
MAX_RETRY_COUNT
API_BASE_URL
使用場面:ほとんどの言語の定数(Python CONSTANTS・Java FINAL_FIELDS)、環境変数、C/C++のマクロ。
kebab-case(dash-case)
ハイフンで単語を区切り、すべて小文字にします:
user-login-count
fetch-api-response
is-authenticated
使用場面:CSSクラス名・カスタムプロパティ、HTML属性、URLスラッグ、npmパッケージ名、CLIフラグ。
Title Case
各単語の先頭を大文字にします:
User Login Count
Fetch Api Response
Is Authenticated
使用場面:ブログ記事のタイトル、ページの見出し、ボタンのラベル、メニュー項目。
UPPER CASE / lower case
単純な大文字・小文字変換。データベースキー・enum値・表示フォーマットに便利です。
言語別の命名規則
| 言語 | 変数 | 関数 | クラス | 定数 | CSS |
|---|---|---|---|---|---|
| JavaScript | camelCase | camelCase | PascalCase | SCREAMING | kebab-case |
| TypeScript | camelCase | camelCase | PascalCase | SCREAMING | kebab-case |
| Python | snake_case | snake_case | PascalCase | SCREAMING | — |
| Go | camelCase | camelCase | PascalCase | — | — |
| Rust | snake_case | snake_case | PascalCase | SCREAMING | — |
| Java | camelCase | camelCase | PascalCase | SCREAMING | — |
| C# | camelCase | PascalCase | PascalCase | PascalCase | — |
| Ruby | snake_case | snake_case | PascalCase | SCREAMING | — |
| PHP | camelCase | camelCase | PascalCase | SCREAMING | — |
| SQL | snake_case | — | — | UPPER | — |
実践的なユースケース
API → コードのマッピング
REST APIはcamelCaseのJSONキーを使うことが多いですが、PythonクライアントはSnake_case変数を期待します。データモデルやマッパーを書くとき:
APIからの入力:
{ "userId": 42, "firstName": "Alice", "createdAt": "2026-01-01" }
Pythonモデルフィールド(snake_case):
user_id: int
first_name: str
created_at: datetime
userId・firstName・createdAtを変換ツールに貼り付けると、user_id・first_name・created_atが一発で得られます。
データベースカラム → コード変数
PostgreSQLはsnake_caseのカラム名を使います。カラム名のリストをTypeScriptのインターフェース用にcamelCaseへ、またはPythonモデル用にsnake_caseへ、1つずつ入力することなく変換できます。
コードベース全体での変数名の変更
リファクタリング時に複数単語の識別子を変更する必要があることがあります。既存の名前をターゲットのケースに変換してから、エディタの検索・置換を使います。
URLスラッグの生成
「My Favorite Developer Tools」というページタイトルをURLスラッグ用にmy-favorite-developer-tools(kebab-case)に変換します。
CSSカスタムプロパティ名
/* 変換前: userPrimaryColor(JSからのcamelCase) */
/* 変換後: --user-primary-color(CSSのkebab-case) */
変換ツールの仕組み
変換ツールは入力テキストを単語境界で分割します。スペース・アンダースコア・ハイフン、そしてcamelCaseの境界(小文字に続く大文字)も認識します。混在した入力にも対応:
myVariableName→ 大文字小文字の遷移で単語境界を検出my_variable_name→ アンダースコアで分割my-variable-name→ ハイフンで分割MY VARIABLE NAME→ スペースで分割
どんな形式で貼り付けても、すべてのケースの出力が同時に得られます。
注意すべきエッジケース
略語:userId(IDを接尾辞として扱う)とuserID(略語を保持する)どちらにするかはチームで統一してください。変換ツールはデフォルトでuserIdを出力します。
数字:item3d・item3D・item_3d?規約はさまざまです。変換ツールは数字を単語の続きとして扱います。
先頭・末尾のデリミタ:_private(Pythonのプライベート属性の慣習)について、先頭のアンダースコアを削除するツールもあります。使用するツールの動作を把握しておきましょう。
変数名を手で打ち直すのをやめましょう。テキストケース変換ツールを試す →