AP Computer Science A is equivalent to a first-semester, college-level course in computer science. The course introduces students to computer science with fundamental topics that include problem solving, design strategies and methodologies, organization of data (data structures), approaches to processing data (algorithms), analysis of potential solutions, and the ethical and social implications of computing. The course emphasizes both object-oriented and imperative problem solving and design using Java language. These techniques represent proven approaches for developing solutions that can scale up from small, simple problems to large, complex problems. The AP Computer Science A course curriculum is compatible with many CS1 courses in colleges and universities.
The AP Computer Science A course must include a minimum of 20 hours of hands-on structured lab experiences to engage students in individual or group problem solving. Thus, each AP Computer Science A course includes a substantial laboratory component in which students design solutions to problems, express their solutions precisely (e.g., in the Java programming language), test their solutions, identify and correct errors (when mistakes occur), and compare possible solutions.
The AP Computer Science A course requires that solutions of problems be written in the Java programming language. Because the Java programming language is extensive with far more features than could be covered in a single introductory course, the AP Computer Science A Exam covers a subset of Java. The AP Java subset can be found in Appendix A of the Course Description.