state vs status

state と status の違いについて調べてみました。ネットで調べるとプログラミング系の質問が多いようですね。知りたいのはもっと一般的な違いです。

Naming conventions: “State” versus “Status”のスコアが高い回答には

文脈によるよ。

state は一般的に実在するものの全体としての状態を指す。ある特定の時刻の全ての値と関係など。

status はもっとある時刻でのものだ。例えばプロセスやワークフローの何かがいるところ。汚れている(訳注: よく分かりません。何かのファイルを編集中の意味でしょうか。) (だからセーブする必要がある)、完了している、インプット待ち、など。

What is the difference between status and state ? によれば

stateは物理的や感情の条件を意味するよ。例えば液体や個体の状態、のように。

statusは状況のことを言っている。

  1. What is the current state of the project?
  2. What is the current status of the project?
の答えは
  1. The project is ongoing.
  2. The project is halfway done.

見て分かるけど、違いはとても小さい。多くの場合、どっちでも意味は通じるけど、どちらかがより正しい。ネイティブでも多くは間違えているよ。

Could anyone explain what the difference between “status” and “state” is? によれば

state は何かがどうなのかを言う。例えば水はどうなのかは液体の状態だ、という風に。また部屋がどうなのか、という時に散らかっている状態だ、と言ったりする。僕の考えではstateは外側の力で変えられることに使えると思う(物質の状態、混乱した状態、感情の状態など)。

一方でstatusは自分で変わりうるものに使う。例えば人の感情やプロジェクト。statusはより流動的で変化しうるもの、だと思う。

分かったような、分からないようなです。

statusは一連の流れの一つの状態を言っていることがあります。stateは流れていない場合にも使える感じはします。間違いかも知れませんが…。

英語

Posted by Gordius