概要
コーディングする上で、関数名や変数名、クラス名などの命名を適切に行うことは必須です。もしも適切な命名ができなかったり命名規則が統一されていないと、可読性の低下によってバグの原因や保守性の低下など大きな問題につながります。そのため、組織単位やプロジェクト単位で命名規則のルールを定めておくことが大切です。
ここではよく使用される命名規則をまとめてみました。
- キャメルケース(ローワーキャメルケース)
- パスカルケース(アッパーキャメルケース)
- スネークケース
- アッパースネークケース
- パスカルスネークケース
- ケバブケース
- COBOLケース
- パスケース
キャメルケース(camelCase)
2つ目以降の単語の先頭を大文字にすることで、ラクダ(camel)のように見える
パスカルケース(アッパーキャメルケース)との対比で、ローワーキャメルケース(lowerCamelCase)と呼ばれることもある
camelCase
// 変数名
userName
localeFile
// 関数名
getDeviceId()
isClicked()
JavaやC言語などをはじめ、幅広い言語で関数名や変数名として使用される。
パスカルケース(PascalCase)
Pascalの影響で普及した
キャメルケースの先頭も大文字にしたもので、アッパーキャメルケース(UpperCamelCase)とも呼ばれる
PascalCase
// 関数名
SetText()
GeneratePassword()
// クラス名
Character
Vector
// Enum
Red
Info
NotFound
関数名やクラス名、enumなどで広く使用される
スネークケース(snake_case)
アンダースコアが蛇のように見える
snake_case
// 変数名
user_name
local_file
// 関数名
get_user_name
is_clicked
PythonやRubyなどのスクリプト言語では、関数名や変数名として使用される
アッパースネークケース(UPPER_SNAKE_CASE)
大文字のスネークケースなので、アッパースネークケース
UPPER_SNAKE_CASE
// 定数
MAX_LENGTH
DEFAULT_PARAM
// マクロ
INFO_LOG()
NOTIFY()
copy
C言語やC++、Javaなどで定数やマクロ、環境変数などで使用される
パスカルスネークケース(Pascal_Snake_Case)
Pascal_Snake_Case
// ファイル名
Install_Service
Log_Congif
ファイル名やURLなどで使用される
ケバブケース(kebab-case)
ケバブの串に見えるらしい(串ならなんでもいいじゃんね、、)
鎖で繋がっているように見えるため、チェインケース(chain-case)とも呼ばれます
kebab-case
// ファイル名
user-settings
teachers-list
// URL
user-page/
ファイル名やURL、CSSのクラス名などで使用される
COBOLケース(COBOL-CASE)
COBOLで有名になった
COBOL-CASE
// 変数名?
USER-NAME
DEVICE-ID
COBOLなどで使用、近年はあまり使用されない
パスケース(path/case)
ファイルパスで使用されるため
path/case
// ファイルパス
app/src/main
data/config
// URL
note.com/n/XXXXXX
ファイルパスやURLなど、階層構造の表現で使用される
まとめ
以上を代表に、命名規則には様々なものがあります。主流な使用例を併せて挙げたもののぶっちゃけなんでもよくて、大切なのは組織やプロジェクト単位で命名規則のルールが統一されていることです。命名規則を意識した開発を行うことを意識していきましょう!
命名規則変換サイト などもあるので、実際に触れて慣れるのもおすすめです!