具体例を交えて紹介
プログラミング初心者が迷う「パスカルケース」「キャメルケース」の違いとは?
プログラミングの学習を始めたばかりの人にとって、重要かつ難解なのが変数の命名規則だ。混同しがちな2つの命名規則「パスカルケース」「キャメルケース」の違いを、具体例を交えながら分かりやすく説明する。
開発者がプログラミング言語を新たに学習するとき、最初に覚えるものの一つに変数の命名規則がある。代表的な命名規則が「パスカルケース」と「キャメルケース」だ。
命名規則の違いを理解しやすくするために、例を交えて説明しよう。以下の変数名は、それぞれどの命名規則に従っているだろうか。
- OutOfMemoryException
- DateFormat
- DatabaseConnection
- LinkedList
- EventHandler
気になる答えは?
上記の例は、いずれもパスカルケースとキャメルケースの両方に従っている。パスカルケースとキャメルケースは、どちらも変数名を複数の単語で構成するときに、それぞれの単語の先頭文字を大文字にする。パスカルケースは変数名の先頭文字も大文字にするが、キャメルケースの場合は必ずしもそうではない。
変数名を構成する全ての単語の先頭を大文字にすれば、パスカルケースにもキャメルケースにも従っていることになる。一方で変数名の先頭を小文字にすることは、キャメルケースには従っているが、パスカルケースには従っていない。以下はキャメルケースにのみ従い、パスカルケースには従っていない例だ。
- jenkinsServer
- iterationCount
- tomcatInstance
- gitRepository
- microService
jenkinsServerのように変数名の先頭を小文字にする表記法を「ローワーキャメルケース」と呼ぶ。JenkinsServerのように変数名の先頭を大文字にする表記法を「アッパーキャメルケース」と呼ぶ。つまりアッパーキャメルケースはパスカルケースと同義だ。
パスカルケースとローワーキャメルケースの使い分け
一般にプログラミング言語やフレームワーク(特定の設計思想に基づくプログラム部品やドキュメントの集合体)は、要素の種類によって命名書式を使い分けている。例えばプログラミング言語および開発・実行環境「Java」では、クラス名、インタフェース名、列挙型(定数の集合体を扱うためのクラス)名はパスカルケースに従い、変数はローワーキャメルケースに従う。
他の変数命名規則
パスカルケースとローワーキャメルケース以外の命名規則には、単語の間をアンダースコア(_)で区切る「スネークケース」や、単語の間をハイフン(-)で区切る「ケバブケース」がある。例は以下の通りだ。
- スネークケースの例
- THIS_IS_SNAKE_CASE
- ケバブケースの例
- this-is-kebab-case
「C++」など複数のプログラミング言語が、標準ライブラリ(プログラム部品群)で定数名や静的変数(プログラム終了時まで値を保持し続ける変数)名の命名規則にスネークケースを採用する。名前の中のハイフンを減算演算子として扱うプログラミング言語もあるため、実質的にケバブケースを利用できない場合がある。
プログラミング言語そのものによる制約がない限り、開発現場では命名規則の使用は推奨慣行であり、必須要件ではない。命名規則に従わなくてもソースコードのコンパイル(実行可能なファイルであるプログラムへの変換)とプログラムの実行は可能だからだ。一般には命名規則は読みやすくて保守しやすいソースコードを記述するためのものであり、コンパイラ(コンパイルを実行するソフトウェア)が求める要件ではない。
TechTarget発 先取りITトレンド
米国TechTargetの豊富な記事の中から、最新技術解説や注目分野の製品比較、海外企業のIT製品導入事例などを厳選してお届けします。
Copyright © ITmedia, Inc. All Rights Reserved.
TechTarget発 先取りITトレンド
米国TechTargetの豊富な記事の中から、最新技術解説や注目分野の製品比較、海外企業のIT製品導入事例などを厳選してお届けします。
この記事の著者
関連記事
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
急増する「AIはこう言ってる」マン 判断を狂わせる「AI忖度」を防ぐには?
-
2
取手市がVDIと決別した理由 更改費用「4倍超」を約1.7倍に圧縮
-
3
「データストレージの活用方法」に関するアンケート
-
4
自宅のWi-Fiが「遅い」「途切れる」本当の原因は? Dellが推奨する鉄則
-
5
本当に安いPCで十分か? “すぐ重くなる”を防ぐノートPC選びの絶対条件
-
6
Claudeの不可視透かしに批判殺到 著作権消失や誤判定に潜む企業リスク
-
7
100億円の「Linux更新」を回避 みずほ銀行が選んだ“おきて破り”のRHEL延命策
-
8
221人調査で分かった「情シス最大のストレス」は?
-
9
LLMの「過学習」、正しく説明している文章はどれ?
-
10
レガシー基幹システムをSAPに統合 山善が突き止めた「標準化と個別最適」の境界線
ホワイトペーパーランキング PR
-
1
年収2000万「クラウドセキュリティのプロ」になれる資格とは
-
2
セキュリティソフトをすり抜ける標的型攻撃メール、不審メールの見破り方とは?
-
3
Windows Updateの通信集中で回線が逼迫、ネットワーク刷新事例に学ぶ解決策
-
4
財務を戦略的組織へ進化させるAI活用術、4つの主要な障壁と解消方法
-
5
「NAS」「SAN」「DAS」は何が違う? いまさら聞けないストレージの基礎
-
6
“あのファイル転送”で暗躍するノーウェアランサム
-
7
標的型攻撃メールを見破るには? サンプル文面を例に傾向を解説
-
8
商用利用の安全性を確保し大量のコンテンツを高速で生成する、AI活用の秘訣
-
9
マンガで解説、1日で生成AI環境を構築できるワークショップの中身とは?
-
10
Dark AIが台頭する時代の新発想、「より高度なAIで対抗する」具体的方法とは?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー