2007-01-01から1年間の記事一覧

AspectDNG の GAOP 機能の問題点

GAOP 機能は、アスペクトのウィービング時に内容を決定できる機能で実装の追加内容を文字列等で指定できる。ただし、AspectDNG 1.0.3 の Generic アトリビュートを使った GAOP 機能では以下のような問題があり、現段階での有効利用は難しい印象がある。 フィ…

AspectDNG を使って private なフィールドにアクセスするメソッドを追加する

ターゲットクラスの private なフィールドにアクセスするメソッドを追加するには、アスペクトの定義クラスに Insert カスタムアトリビュートを使ってメソッドを実装すればよいだけだが、コンパイルを通すために アスペクトの定義クラスでターゲットクラスと…

AspectDNG を使ってインターフェースを追加実装する

.NET 用の AOP ツールである AspectDNG を使って、指定のクラスにインターフェースを追加実装する。手順は以下の通り クラスとインターフェースの作成 アスペクトの定義と適用 テストクラスの作成と実行 クラスとインターフェースの作成 アスペクトの適用対…

Kuina-Dao を使ってみる

id:fits:20070617 では、S2Hibernate-JPA の簡単なサンプルを作ってみたが、これを EntityManager の使用を隠蔽し簡単に JPA を使用するためのフレームワーク Kuina-Dao を使うように変更してみる。手順は以下の通り。 Kuina-Dao の JAR ファイルをクラスパ…

ExpandoMetaClass でクラスを拡張する

Groovy 1.1 から ExpandoMetaClass と呼ばれる特別なメタクラスを使用することで指定のクラスに新規にメソッドを追加したり、オーバーライドしたりする事が可能になっている。ExpandoMetaClass は、metaClass プロパティで提供されるただし、この機能はイン…

IronPython でビデオ編集

Windows Media Encoder の COM コンポーネントを使って IronPython でビデオファイルの編集を実施する。複数の wmv ファイルからビデオの一部をそれぞれ取り出し連結するような編集処理を実施する場合の APIの使い方は以下の通り。 wmv ファイルからビデオの…

IronPython でスクリーンキャプチャのビデオを作成

Windows Media Encoder の COM コンポーネントを IronPython から使用すれば、IronPython で WMV の動画処理が可能となる。とりあえず、今回は IronPython でスクリーンキャプチャの WMV ファイル作ってみる事にする。主な手順は以下の通り。 Windows Media …

S2Hibernate-JPA を使ってみる

Hibernate 上での JPA の使用を更に簡単に実施する事ができる S2Hibernate-JPA を使ってみた。 クラスパスへの設定 以下の JAR ファイルをクラスパスに設定する。 Seasar2 の lib ディレクトリ内の全 JAR ファイル S2Tiger の lib ディレクトリ内の全 JAR フ…

カレントディレクトリ内の全Jarファイルをロード対象にする

groovy.bat(startGroovy.bat)では、クラスのロード設定に %GROOVY_HOME%/conf/groovy-starter.conf ファイルを使用している。そのため、conf/groovy-stater.conf ファイルに load ./*.jar のエントリを加えれば、groovy.bat の実行時にカレントディレクト…

Jakarta POI で Excel ファイルを作成

個人的に Excel が好きではない。ついでに VB も。 なんとなく生産性が下がる気がするので、できれば使いたくない。というわけで、Excel を使わずに Excel ファイルを作成する手段の一つとして Jakarta POI 3.0rc4 を使った Excel ファイルの作成を試してみ…

開発支援ツール

個人的に、現時点では以下のような開発支援ツールを使用している。 コーディング Eclipse(Java、PHP、Ruby) Visual Studio(C#) ビルド Apache Ant Apache Maven(あまり使ってない) MSBuild NAnt テスト XUnit(JUnit、NUnit等) 負荷テスト JMeter MS …

JUDE API を JRuby から使ってみる

以前から気になっていた UML モデリングツール JUDE の API を使ってみた。とりあえず、適当な .jude ファイルを作成して、その中のアクターとユースケース名を列挙する簡単なサンプルを JRuby で書いてみる。もっとスマートな方法があるかもしれないが、と…

JavaFX Script を使ってみる

Sun によって発表された「JavaFX Script」、OpenJFX より openjfx-20070506220507.zip ファイル をダウンロードして早速使ってみた。とりあえず、以下のようにして実行環境を準備。 openjfx-20070506220507.zip ファイルを適当な場所に解凍 環境変数 PATH に…

JBossAOP を Groovy から利用

JBoss の AOP 環境 JBossAOP(1.5.5 GA)を Groovy(1.0)から以下のようにして使ってみる。 Groovy のスクリプトでインターセプターを定義(org.jboss.aop.advice.Interceptor の実装クラス) JBossAOP の DynamicAOP 機能を使って Groovy スクリプトの実行…

フェルミ推定

フェルミ推定は、把握するのが困難な問題の数量を仮説などを組み合わせて短時間に概数を求める方法。 ソフトウェアエンジニアなら、工数の概数見積もりなんかで無意識に使っているかも。 Think! Spring 2007 No21 の記事、"「フェルミ推定」で鍛える地頭力 -…

心理分析

「ザ・ファシリテーター2」に名前が出てた心理分析を簡単に調べてみた。ザ・ファシリテーター2―理屈じゃ、誰も動かない!作者: 森時彦出版社/メーカー: ダイヤモンド社発売日: 2007/01/27メディア: 単行本購入: 7人 クリック: 42回この商品を含むブログ (46件…

JRuby で Pragger を実行してみる

Plagger の Ruby 版とも言える Pragger(revision:72)を JRuby(0.9.8)からとりあえず実行するには、 pragger.rb(Pragger のルートディレクトリにある)に以下のような修正を加える必要があった。 tout8 メソッド呼び出しを削除 Plugin.new(file) の記述…