[Seasar-s2dotnet 69] Re: s2.NETのAOPの実装について

Kazunori Satoh kazz2
2005年 8月 21日 (日) 00:08:22 JST


 佐藤です。

> thisポインタへのメソッド呼び出しにアスペクトが掛からないのは、
> 福井さんと同じく、私も問題だと考えています。
> 
> とはいえ、トランザクションに参加出来なければ元も子もないので、
> トランザクションへ参加できることは必須だと思います。
> 

  正直トランザクションに関しては全く考慮していませんでした。

  確かに大きな問題ですし今後提供されるであろう.NET版のDAO等の
  事を考えるとトランザクションが使えることは外せないですよね。

  あと現在はCOM+トランザクションですが.NET2.0ではトランザクションの
  制御や扱いが変わるとどこかで読みましたので今から.NET2.0のトランザ
  クションの扱いを意識した実装を検討すべきと思います。

> 
> 佐藤さんが検証してくださっていたのですが、トランザクション以前の
> 問題にあたってしまったようです。
> http://d.hatena.ne.jp/Kazzz/20050820/p1

  少し考えればすぐに解る不具合だったのですがEmit方式でちょっと動いた
  ことで舞い上がってしまい変に期待を持たせてしまってすんませんでした。
  .NETの経験が浅いとはいえお恥ずかしい限りです。

  しかし仮にトランザクションの問題が解決できるのであればEmit方式は
  性能への影響が一番問題にならないと思われるので私の日記に書いた
  通りDynamicProxy(http://www.castleproject.org/index.php/DynamicProxy)
  などを採用するのも一つの案だと思います。

 
> 私もthisポインタへのメソッド呼び出し時にもアスペクトをかけれて、
> トランザクションにも参加できる方法に今一度チャレンジしたいのですが、
> もう少し時間が掛かりそうです。

  どうしても解決したい部分ですよね。あまりお役にはたてませんけど私も
  懲りずにまた何かあれば試してみるつもりです。

  あと、日記にも書きましたがやはり一番良いのは"型を生成"するのではなく
  "型を書換える"ことだと思います。JavaのJavassistやcglibのようなものが
  .NETでもあればすぐにでも試してみたいんですけどね。

************************************************************************
* Kazunori Satoh <kazz2 @ joy.hi-ho.ne.jp_NOSPAM>
* http://d.hatena.ne.jp/Kazzz/
*
*




seasar-dotnet メーリングリストの案内