Beginner programmers learn critical problem-solving techniques then move on to grasp the key concepts of object-oriented, GUI programming, advanced GUI and Web programming using JavaFX. A fundamentals-first introduction to basic programming concepts and techniques Designed to support an introductory programming course, Introduction to Java Programming and Data Structures teaches concepts of problem-solving and object-orientated programming using a fundamentals-first approach. The first 13 chapters are appropriate for preparing the AP Computer Science exam. The Brief Version contains the first 18 chapters of the Comprehensive Version. This text is intended for a 1-semester CS1 course sequence.