An introduction to programming and object-oriented design using Java - Nino, Jaime (J. Wiley, 2008)