netail.net
自作フリーソフトや,ゲームに関する雑記を公開してます.
日記はソフトウェア工学の論文ネタが中心です.
最近のお知らせ (古いものはこちら)
2005-04-19 [長年日記] ▲
_ [AspectJ] annotationを使ってみる ▲
記事執筆用に初めてannotationを使ってみた. annotation って実は "@hoge" とかってソースでいきなり使っていいのかと思っていたけど,実は定義が必要だったらしい(annotation typeと呼ぶらしい).public @interface logged { }といった適当な java ファイルを作ってコンパイルして,classpathに配置しておく(参照さえできればいいので一緒にコンパイルしてもOK).
execution(@logged * *.*(..))
でロギングを実行するようにしておくと,ログを取りたいときにポイントカットを毎回作らず,ログを取りたいメソッドの頭に "@logged" を付加するだけでよくなる.
デバッグ用小道具なアスペクトを手元にそろえておくと,実は作業がすごく楽になるのかも.
2005-04-14 [長年日記] ▲
_ [work] Zaurusでプレゼンテーション ▲
Zaurus+CFXGA を輪講で使ってみた結果わかったのは,スライド切り替え速度が遅いので話ながらスライド切り替えるときに妙に間があいてしまうし,質疑応答などのときにもうまく移動しないと応対が難しそう,ということ.また,机の上に置いて使わないと,ケーブルの重みのコネクタ部分への負荷が心配.スライドへの書き込みなどは使ってないので何とも言えず.
あまり頻繁にスライドを移動しないような場合や,設置してスライドをひたすらループさせるようなデモなどでは,普通に使えそう.
_ [論文] 関数の呼び出し関係の類似性を使ったコード位置の移動等の認識 ▲
Michael W. Godfrey, Lijie Zou: Using Origin Analysis to Detect Merging and Splitting of Source Code Entities.
IEEE Transactions on Software Engineering, Vol.31, No.2, pp.166-181, February 2005.
輪講で紹介された論文.バージョン間で,関数が統合されたり分割されたりソースのどこかへ移動したりを検出するのに,関数の名前,引数の名前,呼び出し先・呼び出し元の集合の共通集合の大きさを使うとしている.
呼び出し関係の類似性という考え方はどこかで使えるかもしれないのでメモしておく.
_ [論文]効率的なグラフ解析ツール ▲
Dirk Beyer, Andreas Noack, Claus Lewerentz: Efficient Relational Calculation for Software Analysis.
IEEE Transactions on Software Engineering, Vol.31, No.2, pp.137-149, February 2005.
ソフトウェア分析では,ソフトウェアの要素をグラフにマップして解析することが多いので,大規模なグラフから性質を解析するためのProlog風な印象の言語CrocoPatを作ったという話らしい.
ノードやノード間の Relation を Binary Decision Diagram を使ってエンコードして,必要な操作をすべて BDD 間の演算として定義している.
言語→言語で書けるプログラム例→実装上の工夫→パフォーマンス評価,といった感じ.実装については,Relation を BDD でエンコードしてあとは高速な演算用ライブラリを作った,という感じで,TSEのわりに短くまとまっている印象がある.
_ ozuma [お久しぶりです.元ペーゲー研のおーすみです. さっそく使ってみましたが,存在しないフォルダを出力先に指定するとエラー..]
_ てぃる [お久しぶりです. 10分くらいいじってみたらディレクトリ自動生成ができたので,バージョン上げておきました.まあ,あっ..]