Credits: 1 unit (4 credit hours)
Contact Hours: 4 hours
Instructor: staff
Last Taught: Fall 2018

Text Book: The Art and Science of Java. By Eric Roberts. (Addison-Wesley, 2008.)
Description: Computer games are becoming an increasingly prominent part of our everyday lives, from entertainment to education. This course provides hands-on experience in game programming and covers the basic techniques, including graphics, events, controls, animations, and intelligent behaviors. Students learn the concepts and skills of object-oriented programming By designing and implementing a sequence of computer games. Lecture/laboratory. No prior knowledge in programming and computer games is required.
Co-/Pre-requisite: MATH161 (Calculus I)
or Prerequisites: PHIL200 (Logic)

Specific Course Goals:

After successfully completing this course, the student will be able to:

  • Students will learn the the basic techniques of game design and implementation.
  • Students will be able to implement programs using the fundamental concepts in programming, such as conditionals and loops.
  • Students will understand the basic principles of object-oriented programming, including definition and usage of classes, and interfaces.
  • Students will be able to understand and apply basic data structures and simple algorithms including array, recursion, and sorting.

Student Outcomes:

ABET/CAC Outcome 1 Analyze a complex computing problem and to apply principles of computing and other relevant disciplines to identify solutions..
ABET/CAC Outcome 2 Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements in the context of the program’s discipline.

Topics covered:

  • Introduction to games and Java
  • Basic graphics and events
  • Game control and conditionals
  • Animations and loops
  • Game structures and object-oriented design
  • Advanced game control using arrays
  • More advanced game design using multiple classes
  • Recursion
  • Strings and files
  • GUI and IO
  • Sorting algorithms