研究室

一回自宅に帰ってから研究室へ。T先生の昔話をきいてジェネレーションギャップを感じつつ。引き続き読みあさる。
[アスペクト指向wiki]
http://www.oucc.org/~tail/aspectj/index.php?AspectJ
うーむ。やっぱすごいなぁ。こりゃなめてたわ。
例えば、特定のクラスのフィールドへの書き込み、読み込みを検知して処理を行ったり、引数の内容を横取りして処理内容をまったく別のものに置き換えたりできる。で、アスペクトとして書く処理の中ではフィールドの値や引数、戻り値も使えるし。とにかく、何でもできる。
アスペクトの結合もソースへ、バイナリ(classファイル)へ、実行時に、といくつかの方法がとれるみたい。
AspectJとかってもっといろいろな使い方できると思うんだよなぁ。皆さんもネタだと思わずにちょっといじってみてください。インテリジェンスなバイトコードライブラリー的な位置づけになればもっと使われると思うなぁ。

夜中の2時前にハンターハンターをひさしぶりに読んでから帰る。