Java Design Patterns: A Hands-On Experience with Real-World Examples, Paperback/Vaskaran Sarcar