Object-oriented design & patterns - Horstmann, Cay S. (Wiley India, 2012)