This one-semester course is designed to teach the fundamental concepts of computer programming. The course emphasis is on the creation and use of "objects" as the basic tool for developing various program algorithms (such as finding the lowest common divisor, sorting an array, finding prime numbers, etc.), data structures (such as arrays, structures, strings, maps), and programming processes (such as manipulating data files, passing parameters by value and by reference). Throughout the course there is an emphasis on the use of existing "classes" and the development of new, project-related classes