There has been a lot of talk on how annotations and AOP can combine.
Bill Burke talks about this in his article Aspect-Oriented Annotations and JBoss AOP RC1.
Then Adrian Colyer speaks up in When is a POJO not a POJO? …. when it’s an APOJO.
Here Adrian shows a proposed declare annotation addition to AspectJ:
aspect Notices {
declare annotation : org.xyz.myapp..* : @Copyright(”(C) XYZ 2004. All Rights Reserved.”);
}
It is going to be interesting to see how the cycle goes as we get to annotation hell.
“I want to just annotate my classes”
“Man, there are now a bunch of annotations in my classes. How about I take out the cross cutting ones and make them aspects”
“Man, I need my IDE to show me where these annotations are kicking in”
“Why don’t we just have an XML config file that defines these guys. We could call them something like: deployment descriptors”
I can’t wait :)