【結論】
・キャメルケースは単語の先頭を大文字して繋げる。変数名の先頭を大文字にするアッパーキャメルケース(例:hogeCase)と小文字にするローワーキャメルケース(例:HogeCase)がある。
・スネークケースは単語同士をアンダースコア( _ )で繋げる(例:hoge_case)
・ケバブケースは単語同士をハイフン( - )で繋げる(例:hoge-case)
【目次】
【本題】
変数名に複数の単語を用いたい場合
変数名を決める際、変数の役割を明確にする為に、複数の単語を用いたい場合があります。
但し、ただ単語同士を並べるだけだと、どこまでが一つの単語なのか不明確になり、逆に分かりづらくなります
(例:hogecase)
その為、単語毎の区切りを明確に表す必要があります。
その区切り方に一貫性が無いと可読性が落ちてしまう為、命名規則を設ける必要があります。
その命名規則は「◯◯ケース」という名前で、いくつかの種類が存在します。
今回は、それらを紹介します。
キャメルケース
キャメルケースとは、単語の先頭を大文字にして繋げる命名規則です。
全ての単語の先頭を大文字にするのがアッパーキャメルケースもしくはパスカルケースと呼ばれています。
アッパーキャメルケースはRubyやPythonなどで良く採用されています。
ApplicationController ActiveRecord
先頭の単語を小文字にするのがローワーキャメルケースと呼ばれます。
ローワーキャメルケースはJavaやJavaScriptなどで良く採用されています。
hogeCase fugaCase
スネークケース
スネークケースとは、単語同士をアンダースコア( _ )で繋げる命名規則です。
C++などで良く採用されています。
hoge_case fuga_case
ケバブケース
ケバブケースとは、単語同士をハイフン( - )で繋げる命名規則です。
チェインケースとも呼ばれています。
HTMLのidやclassなどで良く採用されています。
hoge-case fuga-case
なお、ハイフン( - )は、プログラミング言語の中ではマイナスに相当するので、使えない場合が多いです。
Rubyの場合、以下のようなエラーになります。
hoge-fuga = 1 # => NameError (undefined local variable or method `hoge' for main:Object)
参考情報
《今日の学習進捗(3年以内に10000時間に向けて)》
ファイルアップロード関連の自動テストを追加した。
アップロード後のファイルの中身まで検証できるように実装を試みたが、別ウィンドウで開いた内容を検証しようとするとReadTimeout
エラーとなってしまった。
調査したところ、シングルスレッドでは実行できないようで、手に余る為、一旦リンクが正常に生成されているかだけ検証することとした。
中身を検証できる方法が見つかれば差し替えたい。
なお社内勉強会では、基本情報の出題範囲である加算器の問題が出されたが、全く解くことが出来ず、かなり焦りを感じた。
IF文の記述をリファクタリングする際など、実務でも活用できる余地がある基本的な知識なので、試験までには理解しておきたい。
学習開始からの期間 :273日
今日までの合計時間:2563h
一日あたりの平均学習時間:9.4h
今日までに到達すべき目標時間:2493h
目標との解離:70h
「10,000時間」まで、
残り・・・「7437時間!」