「状態」または「ステータス」?変数名に「状態」という単語を含めるべき場合と、変数名に「状態」という単語を含める必要がある場合 [閉まっている]


18

コードとコードに関連する議論を読んで、「状態」と「状態」という言葉が同じ意味で使われているのをよく目にしますが、次の傾向があるようです。

  • 変数が何かが特定の状態にあることを示す値を保持している場合、その変数の名前には「状態」という単語またはその省略形が含まれていることがよくあります。

  • ただし、関数の戻り値がそのような状態を示すのに役立つ場合、その値を「ステータスコード」と呼ぶ傾向があります。そして、その値が変数に格納されると、この変数は一般に「ステータス」または類似の名前が付けられます。

単独では大丈夫だと思いますが、前述の変数が実際にはまったく同じである場合、英語(または人間の言語全般)の複雑な複雑さを含む選択を行う必要があります。

2つのあいまいさを解消する際の一般的なコーディング標準または慣習は何ですか?それとも、この2つのうちの1つを常に避けるべきですか?

このenglish.stackexchangeの質問も関連があると思います。


2
したがって、クラウドソーシングのこの試み。ただし、これは世論調査の場ではありません
マルタインピータース

Stack Exchangeサイトにはありません。おそらくフォーラム?
ピーターズ

確かに少し良くなるでしょう。タイトルの「投票」も行かなければなりません。
マーティンピーターズ


6
この質問のステータスは間もなく閉じられますが、その後しばらくアクティブな状態のままになります。
-Reactgular

回答:


15

この質問が好きです。以下は私の頭からのものですが、私はそれが非常によく合うと思います。

  • ステータスは、操作の結果(成功/失敗など)を記述するために使用されます。

  • 状態 は、プロセスの段階を説明するために使用されます(例:保留中/発送済み)。


私もこの定義が好きです:

  • ステータスは最終(結果)状態です。

プログラミングに適用すると非常に明確です。それを自然言語に適用すると、あまりはっきりしません。英語のスレッドから例を取り上げて、それが最も賛成の答えに当てはまるかどうか見てみましょう。

「このプロジェクトの現在の状況は?」答えは「テスト中」です。

まあ、これは一見すると私の定義と矛盾するように見えるかもしれませんが、コンテキストを理解する必要があります。おそらく、一部のスーパーバイザーは、プロジェクトについて、そして彼らがどこまで到達したかについて彼のチームに尋ねています。要点は、監督者がこれまでの結果に関心があるということです。それは問題のポイントではないので、後に何かがあるという事実は片付けられます。

「このプロジェクトの現状は?」答えは「財務分析のため保留中」です。

ですから、これは国家の本質を非常にうまく示していると思います。「財務分析のため保留中。」現在の状況が何らかの包括的プロセスの一部であるという事実に明確に焦点を合わせており、次の状態を示唆しています。

私はそれがかなりよく言えると思います。


私の意見では、これらはプログラミングに最も役立つ定義です。操作が成功したかどうかを基本的に説明する場合は「ステータス」を使用し、より詳細で詳細な説明は「状態」を使用します。
cprcrack

3

私が見てきたことから、「状態」はしばしば変化する可能性のあるものに使用され、プログラマーは少なくとも間接的にでも、どのように/いつ変化するかをある程度制御できます。また、ほぼ常に肯定的な状態を参照するために使用されます。「接続を切断状態にしました。」

「ステータス」は逆になる傾向があります。これは、プログラマーの入力なしで発生するもの、および多くの場合プログラマーが変更できないものに使用されます。また、否定的なステータスに使用される傾向があります。「接続のステータスは(チェックしています...)切断されています。」


1

「状態」は「状態マシン」を思い起こさせ、通常は「オープン」、「ヘッダーの解析」、「フォーマットのネゴシエーション」、「テキストの読み取り」、「ビデオの読み取り」など、内部/技術的なものを指すために使用します、など。仲間のプログラマーが気にするかもしれないが、エンドユーザー向けではない(あまり)もの。おそらく、エラーに関する詳細を求めても、最初に目にするものではないかもしれません。

「ステータス」は技術が少なく、エンドユーザーにとっては「読み取り」、「エラー404」、「成功200」などです。

すべて私見。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.