Design Patterns Explained: A New Perspective on Object-oriented Design by Alan Shalloway | Menrva Books