Terminology in AOP can be confusing and sometimes clouds what I believe is a relatively simple concept to use. With that in mind, I'm going to blog about some of the terms that are bandied about in AOP conversations. My hope is that once you see how simple the concepts are, that the intimidating terms will no longer prevent you from giving it a whirl. (Note: I didn't invent any of these terms, so if you think I'm incorrect or explaining it wrong, please chime in--I always welcome good criticism and correction).
Today's term: join point.
A join point is a place in your program's execution.
Yeah, that's pretty much it. Imagine a low-level, detailed flowchart that describes a program. A join point is like one of the lines between two boxes.
Examples of typical join points that are relevant to aspect-oriented programming: a method execution, an exception being thrown, a property or field getting/setting, an MVC controller action being executed. For instance, if you want to write to a log file when there's an exception in the "Index" method, then the join point that you are interested in is "Index throwing an exception".