Designed as a Java-based textbook for beginning programmers, this book uses game programming as a central pedagogical tool to improve student engagement, learning outcomes, and retention. The new edition includes updating the GUI interface chapters from Swing based to FX based programs. The game programming is incorporated into the text in a way that does not compromise the amount of material traditionally covered in a basic programming...