JavaScript 簡単なオブジェクト指向入門2
出典: フリー教科書『ウィキブックス(Wikibooks)』
[編集] オブジェクト、メソッド
さらに続いてオブジェクト指向の話をする。
今回は先程とは違った視点でオブジェクト指向を見てみよう。
オブジェクト指向とはプログラムをオブジェクト(モノ)として扱って、プログラムを扱いやすくする考え方である。
人間とはすべてのものをオブジェクトとして扱っている。
例えば、犬なら「犬」、赤なら「赤」、家なら「家」、名前を付けて頭の中でそれを扱う。
しかし、良く知られるように、この世のものにはっきりとした境界はなく、ただ頭の中での管理のために、適当に線引きをしてラベルを貼っているにすぎない。
なぜならその方が分かりやすいからである。
ではプログラムではオブジェクトをどの様に扱っているのであろうか?
これを順番に解説していく。
[編集] メソッド、プロパティ
これは先ほども解説したが、メソッドとプロパティの復習である。
オブジェクト指向言語はプログラムをオブジェクトとして捉えるが、例えばオブジェクトとして考えるものとして人間を取り出して見る。
現実世界で生活するときに、人間は、人間を「人間」として無意識のうちにオブジェクト化して考えている。
人間にはそれぞれ「違い」があるので、それを表すための「特徴」を抜き出す。
- 特徴
- 身長
- 体重
- 年齢
- スリーサイズ
人間の定義は、「特徴(プロパティ)」だけでは完結しない。何かを「して」初めて意味が付与される。
- 動作
- 走る
- 食べる
そして、特徴と動作2つは大抵の場合、互いに関わりあっている。
例えば、人間は何かを食べれば、「体重」が増え、それに伴って成長をすれば「身長」も増える。 走れば逆に、カロリーを消費して「体重」は減るし、「疲れ」が溜まる。
この様に、オブジェクトの状態は、動作によって変わっていく。
逆を言えば、オブジェクトは動作によってその状態を変えていく事と言える。
この状態や特徴を表すものが「プロパティ」、動作や方法を表すものが「メソッド」である。
これをプログラムに落とし込んでみよう。
まず、プログラムの上ではプロパティ(特徴)は、変数として扱える。
そしてメソッドは、データの処理方法に名前を付ける事なので、これは関数と同じである。
さて、これを理解したら次からは実践編に移る。
コードを追いながらオブジェクト指向的プログラムをやっていこう。