AP Computer Science A introduces students to computer science through programming. Fundamental topics in this course include the design of solutions to problems, the use of data structures to organize large sets of data, the development and implementation of algorithms to process data and discover new information, the analysis of potential solutions, and the ethical and social implications of computing systems. The course emphasizes object-oriented programming and design using the Java programming language. PREREQUISITES It is recommended that students have successfully completed a first year high school algebra course with a strong foundation of basic linear functions, composition of functions, and problem-solving strategies that require multiple approaches and collaborative efforts. In addition, students should be able to use a Cartesian (x, y) coordinate system to represent points on a plane. It is important that students and their advisers understand that any significant computer science course builds upon a foundation of mathematical reasoning that should be acquired before attempting such a course. Prior computer science experience is not required to take this course.
COMPUTER LANGUAGE - The course requires that solutions of problems be written in the Java programming language. Because the Java programming language is extensive, the AP Computer Science A Exam covers a subset of Java.
LAB REQUIREMENT - 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. Each course includes a substantial lab component in which students design solutions to problems, express their solutions precisely, test their solutions, identify and correct errors, and compare possible solutions. The College Board has developed several labs that are aligned to the course framework that fulfill the 20- hour lab requirement.