AP Computer Science Principles Course and Exam Description Notes

About the AP Computer Science Principles Course
  • AP Computer Science Principles introduces students to the breadth of the field of computer science.

  • Students will learn to design and evaluate solutions, apply computer science to solve problems through development of algorithms and programs, incorporate abstraction, and use data to discover new knowledge.

  • Students will explain the potential impacts of computing, including the Internet, and contribute to a collaborative and ethical computing culture.

  • The AP Computer Science Principles course does not have a designated programming language; teachers have flexibility.

  • Prior computer science experience is not required to take their course.

Course Goals:
  • Computational Solution Design—Design and evaluate computational solutions for their purpose.

  • Algorithm and Program Development—Develop and implement algorithms.

  • Abstraction in Program Development—Develop programs that incorporate abstractions.

  • Code Analysis—Evaluate and test algorithms and programs.

  • Computing Innovations—Investigate computing innovations.

  • Responsible Computing—Contribute to an inclusive, safe, collaborative, and ethical computing culture.

Compatible Curricula
  • The AP Computer Science Principles course surveys topics across several knowledge areas recommended by the Association for Computing Machinery (ACM) and the Institute of Electrical and Electronics Engineers Computing Society (IEEE-CS).

  • Topics are from Networking and Communication, Parallel and Distributed Computing, Software Development Fundamentals, Programming Languages, Architecture and Organization, Computational Science, Information Assurance and Security, and Algorithms and Complexity.

  • Teachers can view the Computer Science Curricula from ACM and IEEE-CS to see complete curriculum guidelines.

  • AP principles courses aligns with the Computer Science Teachers Association (CSTA) K-12 Computer Science Framework.

AP Computer Science Program
  • AP Computer Science Principles is one of two AP Computer Science Courses available to students.

  • The AP Computer Science A course complements AP Computer Science Principles through a focused study of the Algorithms and Programming big idea.

  • Students can take these two courses in either order or concurrently, as allowed by their school.

Resource Requirements
  • Students need access to a computer system(s) that contains program-creating and editing software and allows students to practice and complete tasks and submit the AP Computer Science Principles performance task.

  • The computer must have Internet access and be able to access the sites necessary for students to be successful in the course and assessment.

  • The school ensures that each student has access to the AP Computer Science Principles Exam Reference Sheet, as well as performance task directions.

  • The school ensures that each student has college-level text deemed necessary by the teacher for individual use inside and outside of the classroom.

Course Framework Components
  • Overview: This course framework provides a description of what students should know and be able to do to qualify for college credit or placement.

  • The course framework includes two essential components:

Computational Thinking Practices
  • The computational thinking practices are central to the study and practice of computer science. Students should practice and develop these skills on a regular basis over the span of the course.

Course Content
  • The course content is organized in the big ideas, which are cross-cutting concepts that build conceptual understanding and spiral throughout course. Colleges and Universities expect this to master to qualify for a college credit and or placement.

  • Big Idea guides and all topics are taught in class.
    *NOTE: All computational thinking practices except Computational Thinking Practice 6 are assessed in the multiple-choice section of the AP Exam.

  • Each big idea is broken down into teachable segments called topics.

  • Teachers encouraged to pace their course to suit the needs of their students and school.

Computational Thinking Practices: Skills.
Computational Solution. Design
  • Design and evaluate computational solutions for a purpose.

Algorithms and Program Development.
  • Develop and implement algorithms Develop programs incorporate abstraction.

Code Analysis Evaluate and Test Programs.
Computing and Innovations
  • Investigate computing innovations.

Responsible Computing
  • Contribute to an inclusive, safe, collaborative and ethical computing culture.

Big Ideas
  • Creative Development (CRD)

  • Data (DAT)

  • Algorithms and Programming (AAP)

  • Computer Systems and Networks (CSN)

  • Impact of Computing (IOC)

Big Idea 1: Creative Development (CRD)
  • When developing comput