2007-06-26

基礎 第5回: オブジェクトの関係

 カレーの作り方について誰かと話す時、あなたはどんなことを話しますか?
そう、今回も前回に引き続き、カレーの話題です。

で、カレーの話ですが、どうです?
  • どのカレールーを使うか?
  • 1皿あたり、どれくらいのカレールーを使うか?
  • 肉はなにを使うか?
  • ケチャップを入れるか?
  • ソースを入れるか?
  • 醤油を入れるか?
  • インスタントコーヒーは?
などなど…こんなかんじでしょうか?

実はこれ、人がオブジェクトについて考えるとき、どんな視点で見ているかということの一例になってます。

コンテンツ


カレーを語る

あなたがカレーについて語るとき、実はカレーそのものについて語ることは滅多にありません。
最終的に出来上がったカレーがどんな成分で成り立っているのか。
そんなことに、あなたは興味がありますか?
たいていの人は、「カレー」というオブジェクトには、どんなオブジェクトが含まれるのか?ということの方に、より関心があるのです。
どのカレールー?何肉?ケチャップは?…
作るときだってそうです。
いくらカレー好きだからって、カレールーの成分なんて、覚えます?
あなたの頭の中にあるレシピには、じゃがいもがいくつくらいとか、にんじん何本くらいとかはあっても、どこ産のじゃがいもとか、何月に採れたにんじんとか、そんなことは書いてないですよね。
人は、オブジェクトについて何か考えるとき、オブジェクトそのものよりも、むしろ他のオブジェクトとの関係の方により注目するのです。
それがなぜかということには(私が思うに)れっきとした理由があるのですが、はなしの焦点がずれますので、それはまた今度。

関連

さて、オブジェクトとオブジェクトとの関係を、「関連」と呼びます。
関連には、実は3つの種類があります。
というか、3つしかありません。
世の中の物事と物事の関係の仕方って、いっぱいあるんじゃないかという気がしますが、突き詰めていくと3種類しかないんです。
ほら、オブジェクト思考で物事を分析すると、簡単に問題を把握することができるような気がしてきましたね。
その予感は、ある意味あたりで、ある意味はずれです。
どうあたっててどうはずれてるのかは、今後しばらくおつき合いいただければ、おのずと理解していただけるかと思いますよ。
で、下の3つが関連の種類です。
「汎化」とはまた、まったく耳慣れない言葉ですね。
「依存」はそれほど耳慣れなくはないと思いますが、いきなり一言「依存」って言い放たれても、曖昧でよくわかりませんね。
「包含」はどうでしょう?耳慣れ度は人によって違うかもしれません。
でも曖昧さは依存と似たようなものですね。
どの関連も、意味を知らないうちは何ともピンとこない名前に聞こえます。
でも、いったん意味を知ってしまえば「ああ、なるほど。名が体を表してたわけだ」とご納得いただけるのではないかと思います。
次回から、この3つの関連について、それぞれ考えていきたいと思います。

オススメ

 開発者の方向けのオブジェクト指向入門には、オブジェクト脳のつくり方がオススメです。
オブジェクト指向でソフトウェアを考えるためのコツがわかります。
基本的なことをひととおり、比較的楽に理解することができるでしょう。

0 件のコメント:

コメントを投稿

Related Posts Plugin for WordPress, Blogger...