_ 日記CGI ▲
ひそかにデータの XML 化を進めているが,やっぱり parse に時間がかかるのか,どうも遅い.インデクス情報を XML にしたのは失敗か.
先に計算可能な部分だけ事前にHTML化する,というのとインデクス情報は単なる行単位のテキストかRDB か何かにしたほうがよさそう.
_ Eclipse ▲
Kent Beck,Erich Gamma は Java Spider なんてものを作っているらしい.http://sourceforge.net/projects/javaspider/
Eclipse 用 update site があるので,そこからインストールできる.ドキュメントがないので plugin.xml を読むと,デバッグパースペクティブに機能を追加している.
こんな感じ.
デバッガで Variables (通常はウィンドウ右上の,変数情報を表示するエリア)のポップアップメニューに「Explore」という項目が増えていて,それを叩くと Spider View 上にぽつんと「JDILocalVariable」といった文字列が出現する.このオブジェクトがドラッグ&ドロップで移動でき,またクリックすると属性値などが表示される.で,属性となっているオブジェクトを表示させると矢印で接続されて,今まで見てきたオブジェクトの関係を忘れずに探索していくことができる.
利便性についての評価は現時点ではできそうもない.まだα版だし.ただ,面白いツールにはなりそうな気がする.
_ Eclipse ▲
Call Hierarchy View は,CompilationUnit に対してVisitor を派遣してメソッド呼び出しノードに対してresolveMethodBinding, resolveConstructorBinding を呼び出して情報を集めているだけだった.特に何か詳しい解析をしているわけではないらしい.(もちろんEclipseコンパイラが詳しい解析をして resolve の結果に影響を与えている可能性はあるが)