«前の日記(2005-02-03) 最新 次の日記(2005-02-05)» 編集

netail.net

自作フリーソフトや,ゲームに関する雑記を公開してます.
日記はソフトウェア工学の論文ネタが中心です.

最近のお知らせ (古いものはこちら)


2005-02-04 古い日記からの変換データ [長年日記]

_ [論文]暗黙のメソッド呼び出し変換

だいぶ前に読んだはずの論文だけどメモし忘れていたらしい.

Robert J. Walker, Gail C. Murphy:Implicit Context: Easing Software Evolution and Reuse.Proceedings of FSE2000, pp.69-78, San Diego, CA, USA,November, 2000.

「あるクラスが AbstractFactory パターンを使っている」といったデザイン情報は,コード上では単に new を使わずにmakeInstance のようなメソッド呼び出しとして表現され,ユーザに makeInstance の使用を強制することはできない.

そこで,「new へのメソッド呼び出しが起きたら,かわりに makeInstance を呼んでね」といったContext を生成してオブジェクトにアタッチする.Context 自体の記述は,過去のメソッド呼び出し履歴に対するリフレクション機能を使ったプログラム形式で書けるようにしている.

これを使うと,一部のコンポーネントへの依存関係をオブジェクト本体から切り離しておけるので,Swing ライブラリでの Look and Feel の切り離しという実験をしている.

AspectJ などを使ってできることとほとんど同じだが,AspectJ などよりも実行コンテキストへのアクセスが主体となっていて,過去のメソッド呼び出し履歴に応じてメソッドのディスパッチを変えるといったことができる.AspectJ の around アドバイスに,その種のリフレクションを持たせたら同じになるといえなくもないか.

お名前:
E-mail:
右の画像に書かれている文字列を入力してください:
コメント: