beginning of content:

All schools that want to label a course “AP” must get authorization by going through the AP Course Audit. This means submitting two things:

  • A subject-specific AP Course Audit Form
  • A course syllabus

Teachers have the option to create their own syllabus or adopt one of the sample syllabi provided. A teacher-created syllabus is checked by our reviewers to ensure that the course fulfills the AP Program’s course-specific curricular and resource requirements.

We offer plenty of resources, below, to help teachers understand course requirements and create a syllabus that fulfills these.

Get Started

Sign In

Don’t have an account? Sign up.

Designing Your AP Computer Science A Course

The AP Computer Science A course should be designed by your school to provide students with a learning experience equivalent to that of an introductory college course in computer science. Your AP Computer Science A course should emphasize problem solving, procedural and data abstraction, object-oriented programming and design methodology, algorithms, and data structures. The AP Computer Science A course is compatible with those topics that are covered in a typical college CS1 course in accordance with the Association for Computing Machinery (ACM)/Institute of Electrical and Electronic Engineers (IEEE) guidelines. Syllabi submitted for course authorization must include a minimum of 20 hours of hands-on structured-lab experiences engaging students in individual or group problem solving.

The assumed prerequisites for entering the AP Computer Science A course include knowledge of basic English and algebra. A student in the AP Computer Science A course should be comfortable with functions and the concepts found in the uses of function notation, such as f(x) = x + 2 and f(x) = g(h(x)). 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.

Getting to Know the Course and Exam

The key document for each AP course is the course and exam description. Start by reviewing it to understand the objectives and expectations of the AP course and exam.

Creating Your Syllabus

Use these resources to design your syllabus.


Download this document for more help creating your syllabus.

  • Syllabus Development Guide: AP Computer Science A (.pdf/794KB) - Includes the guidelines reviewers use to evaluate syllabi along with three samples of evidence for each requirement. This guide also specifies the level of detail required in the syllabus to receive course authorization.

These four annotated sample AP Computer Science A syllabi show how the curricular requirements can be demonstrated in a syllabus and what level of detail you’ll need to include.

Your course must fulfill these requirements, and your syllabus should make it clear how the requirements will be addressed.

AP Computer Science A curricular requirements:

  • The teacher has read the most recent AP Computer Science A Course Description (.pdf/776KB).
  • The course teaches students to design and implement computer-based solutions to problems.
  • The course teaches students to use and implement commonly used algorithms and data structures.
  • The course teaches students to select appropriate algorithms and data structures to solve problems.
  • The course teaches students to code fluently in an object-oriented paradigm using the programming language Java.
  • The course teaches students to use standard Java library classes from the AP Java subset delineated in Appendix A of the AP Computer Science A Course Description.
  • The course includes a structured-lab component composed of a minimum of 20 hours of hands-on lab experiences.
  • The course teaches students to recognize the ethical and social implications of computer use.

AP Computer Science A resource requirements:

  • The school ensures that each student has a college-level text for individual use inside and outside of the classroom and has access to the AP Computer Science A labs.
  • The school ensures that each student has access to a computer for at least three hours a week; three hours are the bare minimum, additional time is desirable. The computer system must contain appropriate software to create and edit programs and must allow programs comparable in size to the current AP Computer Science A labs to compile in seconds. Internet access is strongly encouraged.

The list below represents examples of textbooks that meet the curricular requirements of AP Computer Science A. The list below is not exhaustive and the texts listed should not be regarded as endorsed, authorized, recommended, or approved by the College Board. Not using a book from this list does not mean that a course will not receive authorization. Syllabi submitted as part of the AP Course Audit process will be evaluated holistically, with textbooks considered along with supplementary, supporting resources to confirm that the course as a whole provides students with the content delineated in the curricular requirements of the AP Course Audit.

The specified editions of the following textbooks meet the AP Computer Science A AP Course Audit curricular requirements. Earlier editions of these texts or other textbooks not listed here may meet the AP Course Audit curricular requirements if supplemented with appropriate college-level instructional resources. For discussions regarding the usefulness of these texts and other teaching materials in the AP Computer Science A classroom, please consult the AP Computer Science A Teacher Community.

  • CompuScholar, Inc. TeenCoder: Java Programming. Alpharetta, GA:
  • Cook, Charles E. Blue Pelican Java. Refugio, TX: Charles E. Cook, 2010.
  • Dean, John, and Raymond Dean. Introduction to Programming with Java: A Problem Solving Approach. McGraw-Hill.
  • Ericson, Barbara. Java Review for the AP CS A Exam. Online Text.
  • Horstmann, Cay. Big Java: Early Objects. Hoboken, NJ: Wiley.
  • Horstmann, Cay. Java Concepts. Hoboken, N.J.: Wiley.
  • Kolling, Michael, and David Barnes. Objects First with Java: A Practical Introduction Using BlueJ. Upper Saddle River, NJ: Prentice Hall.
  • Lambert, Ken, and Martin Osborne. Fundamentals of Java: AP Computer Science Essentials. National Geographic Learning/Cengage Learning.
  • Lewis, John, and William Loftus. Java Software Solutions: Foundations of Program Design. Upper Saddle River, NJ: Prentice Hall.
  • Litvin, Maria, and Gary Litvin. Java Methods. Andover, MA: Skylight Publishing.
  • Reges, Stuart, and Marty Stepp. Building Java Programs. Boston, MA: Addison-Wesley.

Before you submit your syllabus, use this checklist to make sure it has all the elements required.