- PR -

変数名などで state と status はどう使い分ければ良い?

投稿者投稿内容
unibon
ぬし
会議室デビュー日: 2002/08/22
投稿数: 1532
お住まい・勤務地: 美人谷        良回答(20pt)
投稿日時: 2008-10-23 11:32
引用:

objectさんの書き込み (2008-10-17 11:51) より:
引用されているサイトを確認した訳ではありませんが、
>「CPU である状態 (state of being CPU)」とは言えません。
は、少し教条的ではないでしょうか?


「教条的」という言葉が私には難しかったのですが、これは "state of being CPU" をこう解釈することも不可能ではない、という意味ですよね?英語として使うとしたらやはり "status of CPU" のほうが良いんでしょね?

引用:

あすかさんの書き込み (2008-10-22 20:03) より:
普段ステータスという言葉を使う関係で
statusを利用した方が
見た人が直感的に理解しやすいからです


たとえば昔は「ステータスレジスター」などというコンピューター用語もあり、これを「ステートレジスター」とはたしかに言わないですね。一方「スリーステートバッファー」とは言いますが、「スリーステータスバッファー」とは言わないです。
みなさまがおっしゃるように、これは、status が入れ物的な意味を持っているからだと思います。

たとえば、C/C++ で、変数に名前をつける際にハンガリアン記法だと、ポインターを示すために
コード:
int * pAge;


のようにしますが、最近の傾向としてはそもそもC/C++を使わずポインターを使うことがなくなってますが、
コード:
int age;


のように、ポインターなのかどうかの情報は変数名自体には持たせないようになっています。
私は、この考えで行くならば、state の入れ物である変数であっても名前は status にせず、state にしたほうが良いのかな?と考えます。
status だと、たしかに見て分かるという点では便利なのですが、ポインターに p を前置しないのならば、status ではなく state にしておいても良いのかな?でも、異端になるのかな?というのが悩ましいところです。
object
ぬし
会議室デビュー日: 2002/03/20
投稿数: 338
お住まい・勤務地: 香川県高松市
投稿日時: 2008-10-24 20:12
objectです。

>unibonさん

>「教条的」という言葉が私には難しかったのですが、
>これは "state of being CPU" をこう解釈することも不可能ではない、という意味ですよね?
私が教条的と表現したのは、
「〜である状態 (state of being...) = state」
を前提として
「後ろに、日本語【〜である状態】 を付けて意味が通る場合は、state を選びます。」
と結論する事を指していました。

少し分かり難かったですかね?
済みません。


>英語として使うとしたらやはり "status of CPU" のほうが良いんでしょね?
CPUが既定項目として既に持っている状態
例えば、RUN、HALT等に言及する場合ならそれで良いんだと思います。
それが「position」が意味する所だと思います。
#つまり、位置情報だけで内容がほぼ確定する。

逆に、
「単純な位置情報では表せない状況」
に対しては、
「state = condition」
としての表現が必要になるのではないでしょうか?

私は、そう思いました。
unibon
ぬし
会議室デビュー日: 2002/08/22
投稿数: 1532
お住まい・勤務地: 美人谷        良回答(20pt)
投稿日時: 2008-10-25 01:03
ちょっと別のことですが、ふと思ったので忘れないうちに書いておきますが、私は最初に state と status を気になって質問させていただきましたが、ほかにこれと同じ関係を持つ別の単語のペアってなにかありますかね?もうひとつふたつぐらい別の例があると、state と status のペアとの対比ができて、解明しやすくなりそうな気がしたので。
unibon
ぬし
会議室デビュー日: 2002/08/22
投稿数: 1532
お住まい・勤務地: 美人谷        良回答(20pt)
投稿日時: 2008-10-25 01:11
引用:

objectさんの書き込み (2008-10-24 20:12) より:
>英語として使うとしたらやはり "status of CPU" のほうが良いんでしょね?
CPUが既定項目として既に持っている状態
例えば、RUN、HALT等に言及する場合ならそれで良いんだと思います。
それが「position」が意味する所だと思います。
#つまり、位置情報だけで内容がほぼ確定する。

逆に、
「単純な位置情報では表せない状況」
に対しては、
「state = condition」
としての表現が必要になるのではないでしょうか?


ありがとうございます。私の理解だと、objectさん説では、position とは enum のようなものでありそれを status と呼び、condition はもっと入り組んだ状態を示しそれを state と呼ぶということでしょうか。それが抽象性の違いであり、抽象性の高さで言えば status < state ということでしょうか。
ただ、いろいろなソースコードを見てみても state という名前の変数に enum を入れることも多いように思います。ちょっと私には position と condition の違いが分かっていないようです。
object
ぬし
会議室デビュー日: 2002/03/20
投稿数: 338
お住まい・勤務地: 香川県高松市
投稿日時: 2008-10-27 12:21
objectです。

>unibonさん

>position とは enum のようなものでありそれを status と呼び、
>condition はもっと入り組んだ状態を示しそれを state と呼ぶということでしょうか。
>それが抽象性の違いであり、抽象性の高さで言えば status < state ということでしょうか。
基本的には、私もほぼ同じ思いですが、少し補足すると
「status(position)の場合、周知性(共通認識)が前提となっている」
様な気が私はします。

それから、「enum」は、周知性とは無関係に、
「殆どあらゆる状況をカテゴライズ出来る機能を持っている」
のではないでしょうか?

そういう意味では、
「state と status の違いは、その周知性にある」
と言えるのかも知れません。
#これも、あくまで私の個人的な見解ですが…。

[ メッセージ編集済み 編集者: object 編集日時 2008-10-27 12:25 ]
Furi2
ベテラン
会議室デビュー日: 2004/10/28
投稿数: 74
お住まい・勤務地: N.Hollywood/Agoura Hills
投稿日時: 2009-03-03 19:44
今更なレスですが、単にstatとしてしまう、というのはダメですか?
正確にはstatはstatusの省略ですけど。。
しかし現実にstatusとstateを使い分けなければならない場面は、そう無いと思うので、どちらだかわからないから混乱、という事も少ないかと。。
unibon
ぬし
会議室デビュー日: 2002/08/22
投稿数: 1532
お住まい・勤務地: 美人谷        良回答(20pt)
投稿日時: 2009-03-04 00:27
引用:

Furi2さんの書き込み (2009-03-03 19:44) より:
今更なレスですが、単にstatとしてしまう、というのはダメですか?


コメントありがとうございます。
ただ、こうすると今度は statistics(統計) と区別が付かなくなる可能性が出てきます。
細かいことなので、たとえば state も status も st ぐらいにしてしまって、statistics は stat にして区別しても別にいいんですけど。
ただ、変数名に限らず、略してしまうと、元の言葉が分からなくなってしまうのは個人的には嫌でして、日常の言葉もできるだけ略さずに使う主義です、私は。

スキルアップ/キャリアアップ(JOB@IT)