AP Computer Science A

College Board APCSA Course Description

APCS Course Audit Syllabus

NPHS Syllabus

This course allows all students to explore programming through problem solving. It also provides extra time to explore non-AP topics that students find interesting and motivational such as graphical interfaces and Applet development. Students learn to design and implement computer-based solutions to problems in a variety of application areas. In solving these problems, students develop, select, and implement appropriate algorithms and data structures. The object-oriented paradigm is used to problem solve using the Java programming language. Students read, interpret, and instantiate standard Java library classes from the AP Java subset. Reading, understanding, and appropriately modifying large programs like the Gridworld Case Study consisting of several classes and interacting objects are also requirements of this course. While the Horstmann text is the main resource for students, the course employs a spiraling approach to concept presentation and exploration using the GridWorld Case Study developed by the College Board. Many programming topics are discovered and/or requested by students early in the course in order to solve problems that they find motivational. Algorithmic thinking and problem solving is enhanced through the use of the Javabat website created by Nick Parlante of Stanford University. Topics are revisited throughout the course in a more formal way to reinforce key concepts and deepen student understanding. Discussions of social and ethical implications of programming and computer use are motivated by articles related to recent events.

Cay Horstmann. Computing Concepts with Java Essentials. New York: Wiley, 2007

Online Textbook

Gridworld Case Study. The College Board 2006

AP CS Alice 3D Programming

Alice 3D movies