Using Aspect-Oriented Programming for Design Patterns Implementation | AMiner