ひとりでのアプリ開発 - fineの備忘録 -

ひとりでアプリ開発をするなかで起こったことや学んだことを書き溜めていきます

命名規則「キャメルケース」「スネークケース」などについて

初めに

 本記事は、「キャメルケース」「スネークケース」などの命名規則をまとめます。

命名規則について

 プログラミングにおいて、変数や関数、クラスなどの識別子(Identifier)を命名する際には、一貫性を保つために特定の規則に従うことが一般的です。

キャメルケース(Camel Case)またはローワーキャメルケース(lower Camel Case):

camelCaseExample

特徴: 単語の最初を小文字で始め、その後の単語の最初の文字は大文字で表記します。
使い方: 主にJavaScriptJavaC#などの言語で一般的に使用されます。クラス名やメソッド名などでよく見られます。

パスカルケース(Pascal Case)またはアッパーキャメルケース(Upper Camel Case):

PascalCaseExample

特徴: 単語の最初の文字も大文字で表記します。
使い方: クラス名など、キャメルケースと同様の文脈で使われます。主にJavaC#、TypeScriptなどで一般的です。

スネークケース(Snake Case):

snake_case_example

特徴: 単語の間をアンダースコア _ で区切り、すべての文字は小文字で表記します。
使い方: PythonRubyC言語などでよく見られます。変数や関数、ファイル名などに使用されます。

アッパースネークケース(Upper Snake Case)

UPPER_SNAKE_CASE

特徴: 単語の間をアンダースコア _ で区切り、全ての文字は大文字で表記される。

ケバブケース(Kebab Case):

kebab-case-example

特徴: 単語の間をハイフン - で区切り、すべての文字は小文字で表記します。
使い方: HTMLやCSSのクラス名、URLなどで使われることがあります。JavaScriptPythonでも使用されることがあります。

Google による Javaの標準的な命名規則

 例として、Google による Java命名規則を紹介します。

google.github.io

すべての識別子に共通のルール

 識別子には ASCII 文字と数字のみが使用される。ただし、例外としてアンダースコアを使用する場合がある。(例外は後述)

パッケージ名

 小文字と数字のみ。
 例:com.example.deepspace

クラス名

 パスカルケース(アッパーキャメルケース)
 例:HashIntegration

 クラス名は通常、名詞または名詞句である。
 例:Character

 テストクラスはテスト対象クラス名で始まり、 Testで終わるよう命名する。
 例:HashIntegrationTest

メソッド名

 キャメルケース

 メソッド名は通常、動詞または動詞句でる。
 例:sendMessage

定数名

 アッパースネークケース
 すべて大文字を使用し、各単語と次の単語を 1 つのアンダースコアで区切る。
 例:NUMBER, AGES

非定数フィールド名、パラメータ名、ローカル変数名

 キャメルケース