私はアスペクト指向プログラミングを勉強しています。クラスを変更するためにいくつかの側面を作成するためにAspectJを使用したいと思います。問題は、クラスのすべてのインスタンスがすべての面で変更されているため、各インスタンスに使用する側面を選択することです。AspectJで修正されたインスタンスを選択する方法は?
別の問題は、どのように同じ方法の異なる側面からのアドバイスの順序を選択するか?
ありがとうございました
私はアスペクト指向プログラミングを勉強しています。クラスを変更するためにいくつかの側面を作成するためにAspectJを使用したいと思います。問題は、クラスのすべてのインスタンスがすべての面で変更されているため、各インスタンスに使用する側面を選択することです。AspectJで修正されたインスタンスを選択する方法は?
別の問題は、どのように同じ方法の異なる側面からのアドバイスの順序を選択するか?
ありがとうございました
をご覧ください。 AspectJは、プログラムの全体ではなく、プログラムの意味に影響を与えると考えるべきです。
AspectJはバイトコード操作で実装されているため、AspectJ仕様の一部であっても個々のインスタンスに対して変更を加えることはできません。
しかし、個々のインスタンスにウィービングするだけで実装に間違いがあることを意味するので、実装する必要があるものを実装する別の方法があります。
私は部分的にしか当面答えません。
同じ方法のためのさまざまな側面からのアドバイスの順序を選択する方法:あなたの2番目の質問については
?
これは、あなたが探している答えではないかもしれないが、それはクラスのすべてのインスタンスは、側面によって変更される仕様ですdeclare precedence
2つの質問は関連性がないので、2つの質問に分割する必要があります。 –