# AP Computer Science A

## Intro

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.

AP Computer Science A is equivalent to a first-semester, college-level course in computer science.

## Prerequisites

It is recommended that a student in the AP Computer Science A course has 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.

AP Computer Science A is organized around 4 Big Ideas, which include ideas important to studying computer science and 5 Computational Thinking Practices that computer scientists engage in.

## Big Ideas

- Modularity
- Variables
- Control
- Impact of Computing

## Computational Thinking Practices

- Program Design and Algorithm Development
- Code Logic
- Code Implementation
- Code Testing
- Documentation