AP Computer Science A (AP CSA) introduces students to software engineering and object-oriented programming using the Java programming language. It is equivalent to an introductory college computer science course, allowing students to potentially earn college credit if they perform well on the AP CSA Exam. The AP CSA Exam consists of 40 multiple-choice questions where students evaluate Java code segments and 4 free response questions where students write Java code that meet required specifications and achieve expected outcomes.

What do students learn in AP CSA?

AP CSA covers a broad range of topics, including 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, and the analysis of potential solutions. Students learn how to use the Java programming language as they explore these topics as well as essential software engineering skills and best practices.

Why should students take AP CSA?

AP CSA is a great next step for students who want to learn a more advanced programming language or that intend to pursue a career in computer science. Additionally, AP CSA provides students with opportunities to explore new concepts like a software engineer and develop computational thinking and problem-solving skills. In this course, students learn how they can use programming to pursue personal interests and see the authenticity and relevance of programming concepts.

How can students prepare for AP CSA?

Learn how to code early! While the course is designed for students of all levels of experience, learning to code early and practicing often increases students' confidence and success in AP CSA. Students can take our live online, expert-led classes to learn how to code and strengthen their knowledge and skills in programming and computational thinking skills.

Additionally, students can explore online resources and tutorials to prepare for the AP CSA exam, such as:

Create & Learn Computer Science Pathways

If your student is just getting started learning how to code and wants to develop a strong foundation in programming and software engineering skills, we encourage the Coding Essentials pathway to prepare them for AP CSA.

Coding essentials pathway for getting ready for AP computer science A

In this pathway, students start by taking our live online Accelerated Scratch course to focus on building fundamental computational thinking and programming skills.

Students then continue to our Mobile Coding for Apps and Games course to learn how to apply these skills to mobile app development.

Our Python for AI exposes students to the Python programming language and solving real-world problems using one of the most popular programming languages used by software engineers and tech companies. In our Build Your Web course, students learn the JavaScript programming language as well as HTML/CSS, which are additional programming languages and skills used in many of the websites and apps we use daily.

These courses build a strong foundation to prepare students for AP CSA, where students learn object-oriented programming principles and the Java programming language.

Frequently asked questions about AP Computer Science A

This webinar with Jamila Cocchiola covers all things AP Computer Science. Cocchiola is the Curriculum Development Manager at Code.org and led to team on the development of recently launched AP Computer Science A curriculum. She has been teaching Computer Science for years, has won multiple awards for her dedication in Computer Science education for children, and before her time at Code.org was a software engineer.

What is the A in AP Computer Science A?

Nothing! College Board used to offer AP Computer Science A and AP Computer Science AB, and the A and AB were simply indicators of level. AP Computer Science AB was discontinued in 2009 due to low numbers of students taking the exam, but it used to cover all of the content of AP Computer Science A in addition to more advanced topics. The name of AP Computer Science A was simply not renamed after discontinuing AP Computer Science AB.

How hard is AP Computer Science A?

AP Computer Science A can be challenging, but it is not hard. The course provides students with a variety of supports to help them learn and practice the concepts to not only learn the Java programming language well but also prepare them for the AP CSA Exam.

Is AP Computer Science A for beginners?

AP Computer Science A is intended for students in grades 9-12. However, students in grades 6-8 can take AP CSA to learn Java and software engineering concepts then take the AP CSA Exam in high school. It does not assume prior programming knowledge or experience with Java. While the course is designed for students of all levels of experience, it is recommended that students have taken at least an introductory computer science course.

Up next, learn how to start a coding club at your high school.


Written by Jamila Cocchiola who has always been fascinated with technology and its impact on the world. The technologies that emerged while she was in high school showed her all the ways software could be used to connect people, so she learned how to code so she could make her own! She went on to make a career out of developing software and apps before deciding to become a teacher to help students see the importance, benefits, and fun of computer science.