Using aspects and annotations to separate application code from design patterns
Rosario Giunta, Giuseppe Pappalardo, Emiliano Tramontana · 2010
Design patterns are an invaluable resource to generate effective design solutions. However, employing some of them can be cumbersome for some application classes when these are forced to mix domain- with pattern-related code. Indeed, for a number of design patterns, we view the code implementing the behaviour required by their roles as a snippet, or concern, which is not involved in the domain issues that a class is supposed to address.