オブジェクト指向とは何か。それは徹底した個人主義だ。「お互いを独立した一個人(一オブジェクト)として認めましょう」ということだ。
個人主義だから、相手の持っていることややっていることを勝手に覗いてはいけない。
たとえば、ハイパーカードでは、よそのオブジェクト(たとえばフィールド)に数字が表示されているときに、それをこちらのオブジェクトで勝手に使って「あそこのフィールドに表示されてる数字に4をかけると私の数字になる」という風にプログラムすることができた。
が、オブジェクト指向では、これは不作法とされている。よそのオブジェクトのものを勝手に覗いたり使ったりするのはよろしくないのである。
では、どうするか。相手を一個人として尊重するのである。それはこんなぐあいだ。
まず、相手にコンタクトをとる。具体的には自分から相手に向けて線をつなぐ。そしてこの線に名前をつける。たとえば「友達」にしよう。
さて、相手は「友達」になった。つぎは相手の持ち物をたずねてみよう。たずねるときは[ ]の中に、相手との関係と、たずねたいことを書く。たとえば、
[友達 自然数の値] と書けば、友達は自分の持っている自然数の値をこちらに返してくれるだろう。
オブジェクト指向は個人主義なので、すべてのオブジェクトは、誰かから礼儀をつくしてたずねられたら、知っていることを答えることになっている。たとえ相手が「頑固オヤジ」であっても、
[頑固オヤジ 自然数の値] と書けば、頑固オヤジは答えを返してくれるだろう。
他のオブジェクトに対して、いちいち関係をつないで、しかもそれがどういう関係であるかを定義する。その上で、知っていることを教えてもらう。これがオブジェクトどうしの個人主義である。コンピューターの画面を見ているものにとっては、「そんなことしなくても画面に表示されてるじゃん」と思えるようなことでも、オブジェクトどうしはおたがいにいちいちお伺いをたててからたずねる。
(EV記:20030509)