「データを取得してくる関数を作りたいんだけど、関数名は get_data() にすべきか、fetch_data() にすべきか…」
「配列の変数名を付けたいけど、list と array どっちが英語圏で自然なんだろう?」
ソフトウェア開発において最も難しく、そして最もエンジニアの頭を悩ませる作業の一つが「変数や関数への適切な命名(ネーミング)」です。
コーディング中に適切な英単語が分からず、Google翻訳から持ってきた長くて不自然な英語をそのまま変数名にしてしまい、後でコードレビューで「この変数名は直感的じゃない」と指摘を受けた経験はないでしょうか。
結論からお伝えすると、綺麗なコードを書くためのネーミングセンスは「英単語の難易度」ではなく、「IT業界という文脈(コンテキスト)における単語の使い分けルール」を知っているかどうかだけで決まります。
この記事では、ネイティブのエンジニアが息を吸うように当たり前に使い分けている、プログラミングにおける必須英単語(動詞・名詞)のニュアンスと命名規則を解説します。
動詞の使い分け:アクションの性質を明確にする
関数(メソッド)の命名において、最初に来る動詞は「その関数が何をするのか」を決定づける最重要パーツです。似たような意味を持つ動詞でも、プログラミングの文脈では明確な使い分けのルールが存在します。
取得系の動詞(Get / Fetch / Find)
最も頻発する「データを取る」というアクションですが、データの「所在」や「コスト」によって使い分けられます。
- Get:すでにメモリ上にあるデータや、計算コスト・通信コストがかからずに「すぐに取れる」安全な状態のものに使います。(例:get_user_name)
- Fetch:外部のAPIや遠隔のデータベースなどに通信を行い、ネットワーク越しに「取ってくる(失敗する可能性や時間がかかる)」場合に使います。(例:fetch_weather_data)
- Find:配列やデータベースの中から、特定の条件に合致するものを「探し出す・検索する」場合に使います。(例:find_user_by_id)
生成系の動詞(Create / Make / Generate)
何かを「作る」場合も、その作られ方によって単語を変えるだけでコードの意図が明確になります。
- Create:データベースのレコードやファイルなど、新しいリソースを「新規作成・保存」する大掛かりな処理に使います。(例:create_new_account)
- Make:少しカジュアルに、一時的なオブジェクトや簡単なデータ構造を作る場合に使われます。(例:make_array)
- Generate:パスワード、乱数、トークンなど、ある種のアルゴリズムやルールに基づいて「自動生成」する場合に使われます。(例:generate_access_token)
計算系の動詞(Calculate / Compute)
- Calculate:単純な足し算などの算術的な計算で結果を出す場合に使われます。(例:calculate_total_price)
- Compute:複雑なアルゴリズムや時間のかかる処理を経て結果を「算出する」という、少し重たいニュアンスを持たせる場合に使われます。
名詞の使い分け:データ構造を正しく伝える
変数名は、その変数が「単数なのか複数なのか」「どんな形式のデータなのか」を名前だけで読者に伝える必要があります。
- List vs Array:厳密には言語仕様によりますが、一般的な命名として、要素の増減がある動的なリストには “List”、固定長の配列には “Array” が使われる傾向があります。(例:active_user_list)
- Is / Has / Can(真偽値):結果が True か False(はい/いいえ)で返ってくる Boolean 型の変数は、必ず疑問文の形で命名します。「〜であるか(Is)」「〜を持っているか(Has)」「〜ができるか(Can)」というルールを守るだけで、コードの可読性が格段に上がります。(例:is_valid_email / has_permission)
命名規則のボキャブラリーを増やすために
このように、「get」と「fetch」の違いを一つ知っているだけで、コードを見た他のエンジニアに「あ、ここで外部と通信して時間がかかるんだな」という設計の意図を正確に伝えることができます。これが本来の英語を用いた「コードの可読性の向上」です。
こうした技術特有のニュアンスや頻出単語のボキャブラリーを爆発的に増やす最強の方法は、「英語の公式ドキュメントや、海外の一流エンジニアが書いたOSSのソースコードを日常的に読むこと」に尽きます。
しかし、「文法が苦手すぎて、英語のドキュメントを開いた瞬間に頭が痛くなる…」という、リーディングの基礎体力そのものが不足している場合は、辞書と睨めっこして1時間かけて1ページを読むような非効率な学習になってしまいます。
そうした状態のエンジニアこそ、まずは大人のやり直し英語として「スタディサプリ」などのアプリを使い、最短ルートでSVOなどの論理的な文法回路を構築し直してください。基礎が固まれば、技術ドキュメントにあふれるネイティブの美しい変数名を、スポンジのように吸収できるようになります。


