There are many things you can do with runtime metaprogramming in Groovy and a number of ways to do them. By building web applications with Grails, you are already using metaprogramming behind the scenes. But it's not always clear why and when you should use metaprogramming techniques in a Grails project.
In this session we will focus on why and when to use metaprogramming techniques and provide some real-world examples. This session will not focus on the details of how to use metaprogramming in Groovy.
Aspect-Oriented programming has grown and fallen in popularity, but it has been a buzz word for quite a while. Outside of security and logging, however, it can be difficult to find a realistic scenario where AOP makes sense, so examples can be hard to come by. With the Grails Circuit Breaker Plugin (http://grails.org/plugin/circuit-breaker), I found a real-life scenario where AOP is a perfect fit.
In this session, we'll discuss how to use AOP in Grails, why and when you might want to use AOP, and we'll dive into the implementation of the Grails Circuit Breaker Plugin.