- PR -

初期化とは?

投稿者投稿内容
wiem
常連さん
会議室デビュー日: 2004/02/08
投稿数: 25
投稿日時: 2004-08-28 23:11
とっても初歩の初歩の質問で申し訳ありません。
初期化とはいったい何なのでしょうか?

始めは、きっと変数を空っぽにすることだろうと思っていましたが、
次第に、変数に値を与えることであるように感じてきまして、
そのあとでは、「データセットをClearにする」ことも
「初期化」ということもあり、何がなんだかさっぱりなのです。

本気で分かりません。
教えてください。
隣の古柴
ベテラン
会議室デビュー日: 2004/06/04
投稿数: 94
投稿日時: 2004-08-28 23:22
定義次第でしょうか。

変数hogeがあって、整数型だとしましょう。

初期状態が0なら hoge=0
初期状態が1なら hoge=1

私の勝手な認識ではこうです。すいません。

ソフトウェア○○学で厳密に定義されているかも。。。
wiem
常連さん
会議室デビュー日: 2004/02/08
投稿数: 25
投稿日時: 2004-08-28 23:31
初期状態ということですね!
あまりにも?!の質問で申し訳ありません。

それでは、初期状態というものをどう考えたらよいのでしょうか?!
自分で与える初期状態のことでしょうか?
wiem
常連さん
会議室デビュー日: 2004/02/08
投稿数: 25
投稿日時: 2004-08-28 23:46
あっ、イニシャライズということですね?!
wiem
常連さん
会議室デビュー日: 2004/02/08
投稿数: 25
投稿日時: 2004-08-28 23:55
いや、やっぱりわかりません。
言葉のうえでの意味ではないようですね。

「初期」という言葉の意味から来る混乱(これは私だけ?)を
招いているのでしょうか?
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2004-08-29 08:00
 そのデータが、どんな状態であるべきかを考え、そのあるべき状態にしておくことです。

 たとえば、顧客マスタであれば、データベースから取得したデータであれば顧客の情報が入っている状態が「初期化状態」。新規に作成する場合は、すべての関連するオブジェクトが作られ、文字列であれば長さ0、他のテーブルへリンクする項目であればあり得ない値、数値であれば0や、0が意味を持つなら負数などの使用できない値、などで埋められていることです。
えムナウ
大ベテラン
会議室デビュー日: 2004/06/10
投稿数: 187
お住まい・勤務地: 東京
投稿日時: 2004-08-29 10:28
たとえば、信号機を考えてください。
交差点に1つの信号制御機と4本の信号機があります。

信号機に電源がはいっった時まだ信号制御機からの指示は来ていません。
信号機は赤・黄・緑のどれかの色をつけなければいけないとします。
信号機は赤を初期値として点灯させます。

#初期値を的確に処理すべき例としてあげてみました。
_________________
えムナウ Microsoft MVP for Visual Developer - C#,2005/01-2007/12
えムナウのプログラミングのページ Blog1 Blog2
unibon
ぬし
会議室デビュー日: 2002/08/22
投稿数: 1532
お住まい・勤務地: 美人谷        良回答(20pt)
投稿日時: 2004-08-29 10:38
unibon です。こんにちわ。

引用:

wiemさんの書き込み (2004-08-28 23:11) より:
始めは、きっと変数を空っぽにすることだろうと思っていましたが、
次第に、変数に値を与えることであるように感じてきまして、
そのあとでは、「データセットをClearにする」ことも
「初期化」ということもあり、何がなんだかさっぱりなのです。


深遠な哲学的なことを問われているのでしょうか、という不安もあるのですが、気軽に回答しますと、たとえて言えば、双六の駒をスタート位置に置くようなものではないでしょうか。
「初期化」の意味合いとしては、細かく分けるとつぎの3通りほどあるのかもしれません。しかし、そんなに意識して分けていることはないことがほとんどでしょう。
(1)不定な値が入らないようにする最低限の保証。駒がタンスの裏になく、双六セットの箱の中にあることに相当?
(2)意味を持った最初の値を設定する。双六のゲーム開始でスタートに駒を置いたことに相当。
(3)リセットやクリアー。双六での「振り出しに戻る」でスタートに駒を置いたことに相当。

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