Aspect Oriented Programming
Aspect Oriented Programming
INTRODUCTION
What is it?
Examples
Pros - Cons
WHAT IS IT?
EXAMPLE
Graphics update
Logging
EXAMPLE CODE
// HelloWorld.java public class HelloWorld {
public static void say(String message) {
System.out.println(message);
}
public static void sayToPerson(String message, String name) {
System.out.println(name + ", " + message);
}
}
// MannerAspect.java
public aspect MannersAspect{
pointcut callSayMessage() : call (public static void HelloWorld.say*(..));
before() : callSayMessage() {
System.out.println (Good day!);
}
after() :callSayMessage() {
System.out.println (Thank you!);
}
}
Can be confusing
QUESTIONS?
CITATION
http://www.cs.ubc.ca/~gregor/papers/kiczales-ECOOP1997-AOP.pdf
https://msdn.microsoft.com/en-us/library/aa288717(v=vs.71).aspx