to

## AP Computer Science Principles

31 Standards in this Framework 26 Standards Mapped 83% Mapped to Course

Standard Lessons
9-12.AP.A.1 Create prototypes that use algorithms to solve computational problems by leveraging prior student knowledge and personal interests.
1. 3.1 Practice PT: Pair-Programming Paint!
2. 7.1 Practice PT: Tell a Story
3. 16.2 Prototype
4. 16.3 Test
5. 16.4 Project Prep and Development
9-12.AP.V.1 Demonstrate the use of both linked lists and arrays to simplify solutions, generalizing computational problems instead of repeatedly using simple variables.
1. 8.1 Intro to Lists/Arrays
2. 8.2 Indexing Into an Array
3. 8.3 Adding/Removing From an Array
4. 8.4 Array Length and Looping Through Arrays
5. 8.5 Iterating Over an Array
6. 8.6 Finding an Element in a List
7. 8.7 Removing an Element From an Array
9-12.AP.C.1 Justify the selection of specific control structures when tradeoffs involve implementation, readability, and program performance, and explain the benefits and drawbacks of choices made.
1. 2.11 For Loops
2. 2.12 If Statements
3. 2.13 If/Else Statements
4. 2.14 While Loops in Karel
5. 2.15 Control Structures Example
6. 2.17 Karel Algorithms
7. 2.18 How to Indent Your Code
8. 2.19 Ultra Karel
9. 2.20 Karel Challenges
10. 5.1 Booleans
11. 5.2 Logical Operators
12. 5.3 Comparison Operators
13. 5.4 If Statements
14. 5.5 For Loops in JavaScript
15. 5.6 General For Loops
16. 5.7 For Loop Practice
17. 5.8 Random Numbers
18. 5.9 While Loops
19. 5.10 Loop and a Half
9-12.AP.C.2 Design and iteratively develop computational artifacts for practical intent, personal expression, or to address a societal issue by using events to initiate instructions.
2. 3.1 Practice PT: Pair-Programming Paint!
3. 7.1 Practice PT: Tell a Story
4. 11.1 Practice PT: Create Your Own Filter!
5. 13.1 Practice PT: The Effects of the Internet
6. 15.1 Practice PT: Present a Data-Driven Insight
7. 16.4 Project Prep and Development
9-12.AP.M.1 Decompose problems into smaller components through systematic analysis, using constructs such as procedures, modules, and/or objects.
1. 2.7 Top Down Design and Decomposition in Karel
2. 6.1 Functions and Parameters 1
3. 6.2 Functions and Parameters 2
4. 6.4 Functions and Return Values 1
5. 6.5 Functions and Return Values 2
9-12.AP.M.2 Create artifacts by using procedures within a program, combinations of data and procedures, or independent but interrelated programs.
1. 6.1 Functions and Parameters 1
2. 6.2 Functions and Parameters 2
3. 6.3 Functions and Parameters 3
4. 6.4 Functions and Return Values 1
5. 6.5 Functions and Return Values 2
6. 15.1 Practice PT: Present a Data-Driven Insight
7. 16.4 Project Prep and Development
9-12.AP.PD.1 Systematically design and develop programs for broad audiences by incorporating feedback from users.
1. 16.1 Intro to Design Thinking
2. 16.2 Prototype
3. 16.3 Test
4. 16.4 Project Prep and Development
9-12.AP.PD.2 Evaluate licenses that limit or restrict use of computational artifacts when using resources such as libraries.
1. 12.8 Cybersecurity
9-12.AP.PD.3 Evaluate and refine computational artifacts to make them more usable by all and accessible to people with disabilities.
1. 16.1 Intro to Design Thinking
9-12.AP.PD.4 Design and develop computational artifacts working in team roles using collaborative tools.
1. 3.1 Practice PT: Pair-Programming Paint!
2. 16.1 Intro to Design Thinking
3. 16.4 Project Prep and Development
9-12.AP.PD.5 Document design decisions using text, graphics, presentations, and/or demonstrations in the development of complex programs.
1. 2.7 Top Down Design and Decomposition in Karel
3. 16.1 Intro to Design Thinking
9-12.CS.D.1 Explain how abstractions hide the underlying implementation details of computing systems embedded in everyday objects.
1. 2.9 Abstraction
2. 9.1 Getting Started
3. 9.2 Number Systems
4. 9.3 Encoding Text with Binary
5. 9.4 Pixel Images
7. 9.6 Pixel Colors!
8. 9.7 Image Manipulation
9. 9.8 Data Compression
10. 9.9 Lossy Compression
11. 9.10 Cryptography
9-12.CS.HS.1 Compare levels of abstraction and interactions between application software, system software, and hardware layers.
1. 9.1 Getting Started
2. 9.3 Encoding Text with Binary
3. 12.7 Sequential, Parallel & Distributed Computing
9-12.CS.T.1 Develop guidelines that convey systematic troubleshooting strategies that others can use to identify and fix errors.
1. 2.7 Top Down Design and Decomposition in Karel
3. 2.16 Debugging Strategies
9-12.DA.S.1 Translate between different bit representations of real-world phenomena, such as characters, numbers, and images (e.g., convert hexadecimal colors to decimal percentages, ASCII/Unicode representation).
1. 9.1 Getting Started
2. 9.2 Number Systems
3. 9.3 Encoding Text with Binary
4. 9.4 Pixel Images
6. 9.6 Pixel Colors!
7. 9.7 Image Manipulation
9-12.DA.S.2 Evaluate the tradeoffs in how data elements are organized and where data is stored.
1. 9.8 Data Compression
2. 9.9 Lossy Compression
9-12.DA.CVT.1 Create interactive data visualizations or alternative representations using software tools to help others better understand real-world phenomena.
1. 8.8 Simulation
9-12.DA.IM.1 Create computational models that represent the relationships among different elements of data collected from a phenomenon, process, or model.
1. 14.1 Getting Started
2. 14.2 Visualizing and Interpreting Data
3. 15.1 Practice PT: Present a Data-Driven Insight
9-12.IC.C.1 Evaluate the ways computing impacts personal, ethical, social, economic, and cultural practices.
1. 12.9 The Impact of the Internet
9-12.IC.C.2 Test and refine computational artifacts to reduce bias and equity deficits.
1. 16.1 Intro to Design Thinking
2. 16.3 Test
3. 16.4 Project Prep and Development
9-12.IC.C.3 Demonstrate ways a given algorithm applies to problems across disciplines.
9-12.IC.C.4 Explain the potential impacts of artificial intelligence on society.
9-12.IC.SI.1 Use tools and methods for collaboration on a project to increase connectivity of people in different cultures and career fields.
1. 16.1 Intro to Design Thinking
2. 16.2 Prototype
3. 16.3 Test
4. 16.4 Project Prep and Development
9-12.IC.SLE.1 Explain the beneficial and harmful effects that intellectual property laws can have on innovation.
1. 12.8 Cybersecurity
9-12.IC.SLE.2 Explain the privacy concerns related to the collection and generation of data through automated processes that may not be evident to users.
1. 12.8 Cybersecurity
9-12.IC.SLE.3 Evaluate the social and economic implications of privacy in the context of safety, law, or ethics.
9-12.NI.NCO.1 Evaluate the scalability and reliability of networks, by describing the relationship between routers, switches, servers, topology, and addressing.
1. 12.1 Intro to the Internet
2. 12.2 Internet Hardware