けいじゅ@SHLジャパンです. 

In [ruby-list :02701 ] the message: "[ruby-list:2701] Re: class design
(Re: url escape) ", on Apr/08 19:53(JST) sinara / blade.nagaokaut.ac.jp
writes:

>> 代数的位相幾何ですか?
>それです。

おかしい. 普通ですね(^^;;;

>> # でも, 原さんを拝見した感じでは, 離散系の数学を専攻されているに違いな
>> # いと思っていたのですが(^^;;; いかがでしょう?
>
>とんでもございませんのトウシロです。私も基礎論は興味あったんですが、
>ゲーデルどまりで、、、最近のは難しいですね。

基礎論は数学じゃないって話しはありますからね. でも, 私にいわせれば, 数
学全部難しいですけど(^^;;;; そういういみでは原さんはすごいですねえ. コ
ンピュータと数学と両立しているんだから...

>> 本の用語にしたがって説明しますと: 
>おお、著者に無料で講習してもらえるなんて!、、うれしい。

おはずかしい. (*^^*

>> フォワーディングはインスタンス変数の参照しているオブジェクトに処理を任
>> せることです. Proxyなどもこの部類に入ります. 現在ではデレゲーション(委
>> 譲)というとこの意味で使われていることが多いと思います.
>
>なるほど、理解できた気がします。「ラッパー」と呼ばれるのも似た
>所があるようですね。

やることは同じなんですけど, 用法がちょっと違うのかも知れません. ラッパー
というと何か見せたくないものを隠すイメージが強いですね.

デレゲーションだと, 相手を利用しているってイメージですよね. それに1つ
のオブジェクトにデレゲートする必要もないですし...

プロキシは, 中継地点みたいなイメージが... この用語はどっから来ているん
だろう? デザインパターンあたりの用語なんですかねえ... それとも プロキ
シサーバから来ているのかな?

>> 正確な意味でのデレゲーションは, そういう機能を言語が持っていなければ実
>> 現できません. ただし, オブジェクトとクラスの関係やサブクラスとスーパク
>> ラスの関係はデレゲーションの一種と解釈することもできます.
>
>ふーむ。正確な意味というのが気になるけど、もいっぺん読んでみよっと。
>(^^

rubyの例で説明すると:

rubyは以下のようになっているって話しですよね.

特異メソッド -> extendされたモジュール群 
   -> 自クラス -> 自クラスでincludeされたモジュール群 
 	-> スーパークラス -> スーパークラスでincludeしたモジュール群 -> ...

これらは全部オブジェクトであると考えて, メソッドも各自に登録されている
と考えると:

オブジェクト -> 特異クラス -> extendされたモジュール群 -> 自クラス ->...

のようにメソッド検索が行なわれ, 実行されると考えることができますよね.

これがデレゲーションの本来のいみです. この場合は, デレゲーション関係
(クラス継承関係)を宣言しておけば, あとは, 言語側であるオブジェクトに送
られたメッセージは上記のパスを通って必要なメソッドが自動的に起動してく
れます.

__
..........................................石塚 圭樹@SHLジャパン(株)...
------------->アドレス変わりました!! e-mail: keiju / shljapan.co.jp <----