変数と関数とクラス・オブジェクトについて
自分の中でまとまり切れてなかったので各名称とその意味について再確認。
コーヒーを例に説明します。
変数
変数はデータを収納する器。
ポット(変数)は硬水や軟水などの(データ)を保持する為のもの。
関数
データを決まった処理により加工する物。
ポット(変数)より送られてきたお湯(データ)をコーヒーフィルター(変数)にかける
ことでコーヒーが抽出(データ処理)される。
クラス・オブジェクト
クラス・オブジェクトは変数と関数の両方の機能を持つ。
お湯(データ)もストックできて、コーヒーを抽出(データ処理)もできて
かつ、できあがったコーヒー(処理済みデータ)自体も保存出来る、いわばコーヒーメーカーである。
クラスとオブジェクトは厳密に言えば違いがあるのだが、その説明は次回で、今回は割愛。
これらをまとめてみると
データを保持 | データを処理 | |
---|---|---|
変数 | ○ | × |
関数 | × | ○ |
クラス・オブジェクト | ○ | ○ |
まとめ
- 変数はデータを保持できるがあくまでも鞄や器の役割と同じく、データを保持する役目しかないので自力でデータ処理したりはできない。
- 関数はあくまでデータを処理するデータの通り道的な役割なので、変数のようにデータを保持することはできない。
- クラス・オブジェクトはデータ処理前も処理後の物も内部で保持でき、当然処理能力ももつ。この特性を活かし必要に応じて後でこの中に含まれるデータを取り出すことで再利用できる。