[Seasar-user:1053] Re: AopProxy とメソッド修飾子について
Sadanori ITO
sito_dev
2004年 10月 3日 (日) 22:26:42 JST
伊藤です。
早速のご対応ありがとうございます。
On Sun, 3 Oct 2004 16:28:52 +0900
Yasuo Higa <higa @ isid.co.jp> wrote:
> Proxyを使うと、アスペクトの対象になっているメソッドから、
> 別のアスペクトの対象になっているメソッドを呼び出したときに、
> アスペクトが適用されなくなってしまうので、Proxyの併用は、
> いまのところ予定していません。
なるほど,この辺りは単純ではない理由で現在の実装に落ち着いている
のだろうとは思いましたが,様々なケースを考えると奥が深いのですね。
私自身は現在の仕様で十分便利に使わせていただいていますので,Proxy と
の併用ができなくても大きな問題はないです。
今回は偶然迷いやすい状況に陥ってしまったので,警告程度はあった方が
便利かなと思って報告させていただきました。
On Sun, 3 Oct 2004 17:06:21 +0900
Yasuo Higa <higa @ isid.co.jp> wrote:
> せっかく警告する機能がついたのに、警告はないのに、
> アスペクトが適用されないケースがあるとかえって混乱するような
> 気がしたので、同一のメソッド名の中に1つでも、static or finalな
> ものがあれば、警告してアスペクトを適用しないようにしました。
了解しました。確かにその通りかも知れません。
何れにしても,POJO を前提に開発できるとは言え,S2 との連携を踏まえた
・メソッド名の選び方(オーバーロードの有無)
・メソッド修飾子の付加
等,「こうした方がより便利に使える」みたいなノウハウは共有できると
良いですね。
例えば私の場合,現状では今回の特性(final で無視される)を利用して
オーバーロードしてしまっている複数のメソッドの中で,本当にアスペクト
を適用させたいメソッドのみ final をはずすことで逆に都合良く使えて
しまっていたりします。
でも,恐らく本質的には対象のメソッドのみ適切な一意のメソッド名に
変更しておいた方が無難かも知れません。
そういう意味では,メソッドのオーバーロードとアスペクトの組み合わせには
注意しようと思いました。
以上です。
また,何か気づいた点がありましたらご報告させていただきます。
今後ともよろしくお願いします。
--
s.ito
__________________________________
for your loved one
http://pr.mail.yahoo.co.jp/pinkribbon/
Seasar-user メーリングリストの案内