モチタン辞典 › 読みもの › 英語の言い方 › プログラムでの有無を表す英語

プログラムでの「有無」の英語表現と命名規則

プログラムでの「有無」の英語表現と命名規則

プログラムで「〜の有無」を表す際、名詞の直訳である presence や existence を変数名にそのまま使うのは不自然です。真偽値(boolean)なら所有・内包を表す has...、属性・状態を表す is...、存在判定なら exists... のように、文脈と役割に合わせて助動詞や動詞を組み合わせるのが標準的な命名規則です。

プログラムでの有無の結論と基本原則

ソースコードやシステム設計において、日本語の「有無」を一対一で英訳しようとすると設計が破綻しやすくなります。英語圏のプログラミングでは、対象が「真偽値フラグ」なのか「DBカラム・APIプロパティ」なのか「仕様書・関数の説明文」なのかによって、選ぶべき品詞と構文が明確に分かれています。

最も重要な原則は、真偽値(boolean)には名詞ではなく助動詞や動詞を使うという点です。辞書を引くと「有無」の訳語として presence or absence や existence が出てきますが、コード内で user_presence_flag のような名詞の羅列をすると、何が true で何が false なのかが直感的に伝わらなくなります。

以下の3つの用途に分けて考えると、適切な英語がすぐに定まります。

用途別の「有無」英語表現の整理
用途別の有無表現

boolean変数

  • has...
  • is...
  • exists...

DBカラム・JSON

  • has_attachment
  • is_active

仕様書・コメント

  • check whether...
  • presence of...

用途を3つに分類し、適した品詞や接頭辞を使い分けます。

次の疑問コード以外の一般的な英文でも使い分けたいときは、「有無」を表す英語表現のまとめを確認すると整理しやすくなります。

boolean変数の命名パターンと使い分け

真偽値(boolean型)の変数名で「有無」を表す場合、主に has、is、exists の3つを使い分けます。それぞれの選択基準は文法的な意味に基づいています。

1. 所有・内包の有無を表す「has〜」

オブジェクトや対象が「何かを持っているか」「中に含んでいるか」という有無を表す場合は、has + 名詞 または has + 過去分詞 を使います。

2. 属性・状態の有無を表す「is〜」

対象そのものが「ある状態になっているか」「その属性を備えているか」を表す場合は、is + 形容詞 または is + 名詞 を使います。「所有」ではなく「主語そのものの状態」である点が has との違いです。

3. 実体の存在・未存在を表す「exists〜」

ファイル、レコード、リソースが「システム上に実体として存在しているか」という有無を判定する場合は、exists を動詞のまま用いるか、exists + 名詞 の形を取ります。

表は横にスクロールできます →

接頭辞文法構造意味合い変数名の例
hashas + 名詞所有・内包の有無hasOption, hasAttachment
isis + 形容詞状態・属性の有無isEnabled, isCompleted
exists動詞 または 名詞 + exists実体・配置の有無exists, recordExists
withwith + 名詞付随・同梱の有無(設定など)withCredentials, withBorder
この記事に出てくる英単語(イラスト・音声つきの辞典ページへ)

DBカラム名とAPIでの有無の命名規則

データベース(RDB)のテーブル定義やAPIのJSONレスポンスにおいて、有無を表すフラグを命名する際も統一基準が必要です。環境やフレームワークの慣例に応じて、キャメルケース(camelCase)またはスネークケース(snake_case)を適用します。

DBカラムの推奨パターン

リレーショナルデータベースではスネークケースが多用されます。型は BOOLEAN または TINYINT(1) に設定し、接頭辞に has_ や is_ を置くのが標準的です。

単独の名詞を避けるべき理由

カラム名に discount や coupon のような単一の名詞を使ってフラグ値(0または1)を格納すると、数値(割引額)が入るのか、文字列(クーポンコード)が入るのか、真偽値(クーポンの有無)なのかが判別できません。

必ず has_coupon や is_discounted のように真偽値であることが伝わる名詞句・助動詞を付与します。

JSONレスポンスの例

Web APIのレスポンスボディでも同様です。フロントエンド側で条件分岐(if (data.hasItem))にそのまま流し込める命名が好まれます。

Nathan英語の言い方は、話して覚えよう。会話アプリ「モチスピ」英語を話して練習できる会話アプリ。話すたびに、発音・文法・自然さをその場で直してもらえます。無料で試す

有無を判定する関数・メソッドの命名パターン

「有無をチェックする」「有無を判定して真偽値を返す」関数やメソッドの命名にも、広く認知されている定番の語順があります。

真偽値(boolean)を返す判定メソッド

戻り値が true または false であるメソッドは、変数名と同様に助動詞で始めるのがデファクトスタンダードです。メソッドを読むだけで「はい/いいえ」で答えられる疑問文の形になります。

検証を行い例外を投げる、または処理を実行するメソッド

単に判定値を返すだけでなく、有無を確認してエラーハンドリングを行ったり、処理を進めたりする関数には動詞 check、validate、verify、ensure を用います。

戻り値と役割によるメソッド命名の違い

真偽値を返す判定メソッド

  • 助動詞で開始する
  • 疑問文形式で表現する
  • hasPermission()
  • exists()

検証・処理を行うメソッド

  • 動作を表す動詞を使う
  • 例外送出や処理継続を行う
  • validatePresence()
  • ensureRecordExists()

真偽値を返すか、例外送出や処理を伴うかで動詞の使い方が分かれます。

プログラムでの有無を表す英語のイメージ

次の疑問命名の前提となる概念自体を再確認したい場合は、メソッドの基本的な意味と使い方をおさらいしておくと理解が深まります。

有無を表す英語の名詞の使い分けと適用箇所

変数名ではなく、ログ出力のメッセージ、APIドキュメント、設計書の項目名などで「有無」という名詞を使いたい場合があります。英語には「有無」に該当する名詞が複数あり、それぞれニュアンスが異なります。

単語ニュアンス・核となる意味プログラミングでの適用箇所
presenceその場にあること、出席、実在必須項目の入力有無、物理的・空間的な存在
absence不在、欠落、ないこと(presenceの対義語)値の欠損確認、非存在の検証
existence存在そのもの(概念的・永続的)DBレコードやファイルの存在チェック
availability利用可能性、空きがあることサーバーの稼働状態、在庫の有無、予約枠
status状態、状況(有無を含んだ上位概念)処理状況、各種ステータスコード

使い分けの具体例:

仕様書やコメントで使える有無の英語フレーズ

設計書、要件定義書、ソースコード内のコメント、コミットメッセージで「〜の有無を確認する」「〜の有無に応じて処理を分ける」と書く際に役立つ定型表現です。

1. 「〜の有無を確認・判定する」

日常的なコードコメントでは、whether or not よりも簡潔な whether や if が好まれます。

2. 「〜の有無に応じて」

3. 「有無にかかわらず」

文書・コメント用の定番フレーズ
🔍有無の確認・判定

Check whether や Verify the presence of を用いる

🔀有無に応じた分岐

Depending on the presence や Based on whether を用いる

🔄有無にかかわらず

Regardless of whether や Regardless of the presence を用いる

有無の確認や条件分岐で頻出する英語表現のパターンです。

初心者がやりがちなNG命名例と改善策

プログラムで有無を表現する際、可読性や保守性を著しく下げるアンチパターンがいくつかあります。以下の例を避けるだけでもコードの品質が向上します。

1. 単語を直訳して「flag」を付ける

presence_flag は「何の存在を表しているか」が主語欠落により不明瞭になりがちです。また _flag というサフィックスは現代のオブジェクト指向や型システムでは冗長とされることが多く、助動詞で始める表現が好まれます。

2. 二重否定を生み出す否定形のフラグ名

否定形を変数名にすると、条件分岐で「ない場合」を評価する際に if (!isNotFound) や if (!hasNoPermission) のように否定演算子(!)と打ち消し合って二重否定になり、バグの温床になります。原則として肯定形(ポジティブ)で命名し、判定時に否定します。

3. 品詞の不一致

助動詞 is の後ろに動詞の原形 has を重ねたり、has の後ろに形容詞 valid を置くのは文法的に誤りです。is + 形容詞(isValid)、has + 名詞(hasDiscount) の規則をチーム内で統一することが重要です。

初心者が避けるべき3大NG命名
🚫直訳・flag接尾辞

presence_flag ではなく hasValue や exists を選ぶ

⚠️否定形のフラグ名

二重否定を防ぐため isNotFound ではなく isFound にする

❌品詞の不一致

isHasDiscount を避け is+形容詞 や has+名詞 を守る

可読性と保守性を下げるアンチパターンと推奨される改善策です。

続けて読む

英語の言い方の疑問をすべて見る

理解度チェック

Q1. 対象が何かを「所有・内包」している真偽値の命名は?

  1. has + 名詞
  2. is + 形容詞
  3. exists + 名詞
  4. with + 動詞
答えを見る

正解: A. has + 名詞
対象が何かを持っているかを表す真偽値変数には、has + 名詞を用います。

Q2. DBやAPIで単一の名詞(discount等)を避ける理由は?

  1. 単語の文字数が短すぎて検索しにくいため
  2. 数値や文字列か真偽値か判別できないため
  3. スネークケースに変換することができないため
  4. フレームワークで予約語として登録されているため
答えを見る

正解: B. 数値や文字列か真偽値か判別できないため
単一の名詞だと数値や文字列が入るのか真偽値なのか区別がつかないためです。

Q3. 「トークンの有無を確認する」を英訳した文はどれ?

  1. Check whether the token exists.
  2. Determine the token presence_flag.
  3. Depending on token absence.
  4. Validate token without condition.
答えを見る

正解: A. Check whether the token exists.
本文では「トークンの有無を確認する」の定型文として紹介されています。

よくある質問

Q. 「有無」を1単語の英語変数名にするなら何ですか?
単体なら文脈に応じて exists や available が適しています。ただし変数単体では何が存在するのか不明瞭になるため、userExists や hasDiscount のように対象の名詞を組み合わせるのが基本です。
Q. has と is のどちらを使うべきか迷ったときの基準は?
「主語がその要素を持っている・含んでいる(所有)」なら has(例: hasChild)、「主語そのものがその状態である(属性)」なら is(例: isActive)と判断します。
Q. APIの項目名で presence と availability の違いは?
presence はデータや物理的実体が「その場にあるかないか」を表します。availability はシステムや在庫が「利用可能な状態にあるかどうか」を表す際に使います。
Q. 「〜がないことの有無」をフラグ名にするのはダメですか?
避けるべきです。isNotAvailable などの否定フラグを作ると、コード上で !isNotAvailable(二重否定)が発生し可読性を著しく落とすため、常に肯定形で定義します。
Q. DBで有無フラグの命名はスネークケースでどう書きますか?
is_active、has_attachment、is_verified のように、助動詞+形容詞または名詞の形でアンダースコアを繋ぐのが標準的です。

2026年10月9日更新・モチタン辞典編集部