「オブジェクト指向」

そうそう、オブジェクト指向の「オブジェクト」って昔は「モノ」だと思ってたけど、「対象」と考えた方がしっくり来るということに気づいた。数ヶ月前にふっと。


データという対象にorientedなプログラミング技法がオブジェクト指向なわけです。
つまりデータ重視。
データに関数をくっつけてパッキングしたのが「オブジェクト」だけど、それは「モノ」に限らず、もっと広い範囲を示してる。


え、例をあげろって?
うーん、例えば、えーとそうだな…。
Stringなんていうのはもろにモノだけど、BufferedReaderなんかはモノとはちょっと言えないよね。


Objectという言葉は、物体とかそういう感じの意味より先に、まず「対象」という意味がある。
で、オブジェクト指向というのを「対象指向」と考えると突然開ける世界があったんだよね。うまく言えないけど。
なんかこう、「そう、それっだよっそれっ!!」って言いたいようなことが。


再考しよう。
対象(=データ)をどう扱うかを考えるのがオブジェクト指向
それはオブジェクトをモノと考えるのとは異なり、さらに一歩抽象的な領域だ。
「データ」という抽象的なものの扱いのレベルで考えられるのがオブジェクト指向だったのか!と衝撃を受けたのかな。


多分そんな感じなんだけど、文字にしてまとめるとどうも感動がない。