Please enable JavaScript to use CodeHS

Enroll in AP Computer Science A

This course is for individual at-home learners and purchases the course for a single user. For our school plans please visit


The CodeHS AP® Computer Science A course is a year-long course designed to help students master the basics of Java and equip them to successfully pass the AP Computer Science A Exam at the end of the school year. All learning materials and resources teachers and students need for a successful year-long AP® Computer Science A course can be found on the CodeHS website. The curriculum has been pre-approved by College Board's AP Course Audit as meeting or exceeding the curricular expectations colleges and universities have for this subject.


The entirely web-based curriculum is made up of a series of learning modules that cover the fundamentals of programming. Each module is made up of short video tutorials, example programs, quizzes, programming exercises, challenge problems, and practice problems. Students write and run Java programs in the browser using the CodeHS editor. The course is designed to be taken over a year.

At the end of each unit, you will take a summative multiple choice unit quiz in the style of the AP Exam that assesses their knowledge of the Java concepts covered in the unit. Included in each lesson is a formative short multiple choice quiz.The course also provides an AP Test Practice unit with a cumulative AP Practice Multiple Choice Test and several Free Response questions.

Tutor Support, Grading Help, and Questions

One of the great things about taking a CodeHS course online as an individual is that you will get supported along the way from our community of CodeHS tutors. For exercises you submit, CodeHS tutors will grade the problem and provide feedback in addition to the automatic checker system. Also, if at any point you have a question, you can ask it through the site and a tutor will respond to help you get unstuck. Tutors normall answer questions very quickly, usually in a few hours.


The course is meant to be taken online as a self-paced course. We recommend setting a schedule to complete the course. Students complete the course in a wide range of time periods, but we would recommend anywhere from 4 to 8 months. You will have access to the course and tutor grading and help for a year.

Who is it for?

The AP® Computer Science A course is a fast-paced, AP level course. While there are no official prerequisites for the CodeHS AP® Computer Science A course, we recommend that students take our Introduction to Computer Science prior to AP® Computer Science A. Students who have completed our Intro to CS course will be able to apply knowledge of concepts covered in the Intro course to the more advanced setting of the AP® Computer Science A course.

AP Exam

This course will prepare students for the multiple choice AP® Computer Science A examination. Each lesson comes with quizzes to test essential knowledge for the AP Exam. Each unit includes a cumulative AP style multiple choice exam to test understanding of the concepts in the unit, and provide immediate feedback to the student.

Meet Your Instructors

Jeremy Keeshin

As co-founder of CodeHS and previous computer science TA at Stanford, Jeremy has helped to teach thousands of students how to program.

Calvin Studebaker

As a Curriculum Engineer at CodeHS and former computer science TA at Stanford, Calvin has helped thousands of students learn the foundations of computer science.

What do you Learn?

Module Description
Introduction to Programming in Java with Karel the Dog:Learn the basics of Java commands, control structures, and problem solving by solving puzzles with Karel.
Basic Java:Learn the basics of the Java programming language. This unit covers printing, variables, types, as well as how to use the basic control structures in the Java language.
Methods:Methods are segments of code that perform a specific task. This module teaches you how to define methods in your programs and uses the autograder to test if your methods are working correctly.
Classes and Object-Oriented Programming:This unit teaches students the basics of Object-Oriented Programming in Java, which is a powerful programming paradigm. Students will learn how objects store data and interact with each other in Java programs. Students will design and implement classes and extend classes using inheritance.
Data Structures:This module introduces basic data structures in Java including arrays, ArrayLists, 2 dimensional arrays, and HashMaps. Data structures will be used to design larger applications.
Algorithms and Recursion:In this module, students will be introduced to fundamental searching and sorting algorithms including sequential search, binary search, insertion sort, selection sort, and mergesort. Recursion is also introduced.
AP Test Practice:This module provides a practice test in the same format as the AP® Computer Science A exam.
Final Project:This is your chance to build your own application using the new skills you've learned!
Optional Supplemental Materials:Practice AP CSA concepts including string processing, recursion, designing classes, arrays and arraylists, searching and sort algorithms, and more!


You will be able to create programs like these after completing the CodeHS AP® Computer Science A course:

Battleship Mad Libs Pokemon

The Grading Plan

  • Complete Curriculum
  • Code Review From Tutors
  • Grading From Tutors
  • Ask Questions to Tutors
  • Autograder Instant Tips
CodeHS uses Stripe for payments and does not store your card information on our servers.
Total Due: $199