2007/05/16

trigger on

思ったよりは盛り上がっていないJavaFXだけれども、
とりあえず、手に入るドキュメントは読了。
オーサリングツールが公開されれば盛り上がるかな。

trigger on句はちょっとした革命。
JavaだとBean仕様に従ってアクセサメソッドを定義していたけど、
C#のように「必要な時だけ定義」して、
=演算子の代入で自動的にtrigger on句で
指定した処理が起動するようになってる。
つまり、

class Model
{
attribute hoge: Number;
}

trigger on Model.hoge = newValue
{
// 処理1
}

として、

Model{hoge: 10}

とすると、
代入する際には、triggerで指定した処理1が実行される。
いつのためなのか誰の為なのかわからないアクセサメソッドを
必ず書いていたわけで、それに比べると素敵だ。

でもTriggerが凄いのはここから先。
例えば、

 trigger on new Model
{
// 処理2
}

として、

 Model{}

とすると、
なんと処理2が走る。
trigger on句の後に指定されいているnew Model句は
Modelのインスタンス生成のタイミングを指定している。
これはただのアクセサメソッドがどうのこうのと言うよりも、
アスペクトに近いものと判断したほうがよさそうだ。

ただし、そうなるとややこしい。
functionやoperationとしてモデルの関数を明示的に実装するのか、
それともtriggerで暗黙的に実装するのか。
以前にSpring FrameworkのAOPでValueObjectに対して
振舞を持たせている(=ドメイン化)人がいたけれども、
そういった迷路がおぼろげながら僕の眼前にも広がるのかもしれない。


posted by SuZ at 18:05 | Comment(1) | TrackBack(0) | Programming::Java

2007/05/10

兵士はどこだ?

Java FXだ。

FlexやらApolloやらWPF/Eと戦うための、
僕達に突然与えられた、武器だ。
まだ未完成でも、竹槍よりはましだろう。

兵士はここだ。

君は?

// 久しぶりに更新してみたけど、微妙な投稿です。
// このブログのUIにも飽きたので、
// ただいま鋭意作成中です。乞わないご期待。
posted by SuZ at 23:41 | Comment(0) | TrackBack(0) | Programming::Java

広告


この広告は60日以上更新がないブログに表示がされております。

以下のいずれかの方法で非表示にすることが可能です。

・記事の投稿、編集をおこなう
・マイブログの【設定】 > 【広告設定】 より、「60日間更新が無い場合」 の 「広告を表示しない」にチェックを入れて保存する。