netail.net
自作フリーソフトや,ゲームに関する雑記を公開してます.
日記はソフトウェア工学の論文ネタが中心です.
最近のお知らせ (古いものはこちら)
2003-04-27 古い日記からの変換データ ▲
_ Java ▲
今日のはまり.
Javaで,更新したデータファイルを読み込んでくれないので調べてみたら,if (File.canRead(project_dir + "/hoge")) { f = new FileInputStream(CONSTANT + "/hoge");}というようなコードになっていた.CONSTANT -> project_dir で置き換えたときに,そのまま放置していたらしい.
2004-04-27 古い日記からの変換データ ▲
_ 読書 ▲
「AspectJ によるアスペクト指向プログラミング入門」読了.
感想はというと:・2章,3章が「振る舞いへの作用」「構造への作用」として dynamic crosscutting と inter-type declaration (と Static crosscutting)を区別していて親切. 特に,pointcut ごとの this, target, args などの内容が 日本語で解説されているのはリファレンスとして便利そう. 応用例として挙がっているのは・コンテキストの識別・キャッシュ・アクセス制御など.やっぱりこのあたりが自然に受け入れられるみたい.
面白いと思ったのが,MDA との関連性.ビジネスモデルと実装技術の統合をウィービングと考えて,MOF, QVT がウィービング記述だ,という考え方は,以前聞いた,ビジネスルールをアスペクトとして書いて~という話なんかよりはだいぶ自然に感じられる.
最後の7章は,パッチとしてのアスペクトの話.~tail/aspectj/ ではちょっとだけ,使えそう,という程度しか書いてないけれど,それをそこそこの規模のソフトウェアに適用するというケーススタディっぽいことをやっていて面白い.
やっぱり問題は統合開発環境からの支援が落ちること,理解容易性・予測可能性の低下あたりだろうか.こういうのを読むと,やっぱりアスペクトを使った表明記述の話とかをもう少し進めないとなぁ,と思うのだが,他の論文読みやら作業もたくさん.けっこう忙しくなりそう.
_ テンキー ▲
テンキーの仮想キーコードは VK_NUMPADx で VK_x とは違った.当たり前といえば当たり前かもしれないが.
外付けテンキーの NUMLOCK が入力したときだけ瞬間的に ON/OFF されるのが怪しいけれど.
_ 読書 ▲
「AspectJ によるアスペクト指向プログラミング入門」が研究室に届いたのでさっそく読むことにする.感想などは AspectJ 側の紹介ドキュメントとして更新される……予定.
鷲崎先生ありがとうございます.
_ 論文 ▲
Baowen Xu, Zhenqiang Chen:Dynamic Slicing Object-Oriented Programs for Debugging.
動的スライスへの適用論文.使っている手法は静的スライスの場合と変わってない.メソッドを,出力パラメータが依存する入力パラメータの集合,という形で各出力パラメータへの依存関係を設定している点とフィールドなどローカル変数以外の要素を入出力パラメータ扱いするところがいちおう新しいところなのだろうか.
_ 論文 ▲
Zhenqiang Chen, Baowen Xu:Slicing Object-Oriented Java Programs.ACM SIGPLAN Notices, Vol.36, No.4, pp.33-40, April 2004.
プログラムスライシングをオブジェクト指向プログラムに適用しようという論文.メソッド単位で PDG を構築して,メソッド呼び出し文が登場するごとに,そのメソッドの出力パラメータを基点にスライスを取った結果を加えていくという形になるらしい.内部実装が存在しない場合はすべての入力値がすべての出力値に依存するとみなす.フィールドは全部パラメータ扱い.
それ以外にも,スライス範囲をしぼったスライシングも提案している.Object Slicing が1個のオブジェクトに,Class Slicing が1個のクラスに注目したものらしい.どのくらい役立つのかは不明だが.