Please enable JavaScript to use CodeHS

Iowa 3B Standards Mapping


AP Computer Science Principles in JavaScript

28 Standards in this Framework 18 Standards Mapped 64% Mapped to Course

Standard Lessons
3B-AP-08 Describe how artificial intelligence drives many software and physical systems.
3B-AP-09 Implement an artificial intelligence algorithm to play a game against a human opponent or solve a problem.
3B-AP-10 Use and adapt classic algorithms to solve computational problems.
  1. 7.4 Array Length and Looping Through Arrays
3B-AP-11 Evaluate algorithms in terms of their efficiency, correctness, and clarity.
3B-AP-12 Compare and contrast fundamental data structures and their uses.
  1. 7.1 Intro to Lists/Arrays
  2. 7.2 Indexing Into an Array
  3. 7.3 Adding/Removing From an Array
  4. 7.4 Array Length and Looping Through Arrays
  5. 7.5 Iterating Over an Array
  6. 7.6 Finding an Element in a List
  7. 7.7 Removing an Element From an Array
3B-AP-13 Illustrate the flow of execution of a recursive algorithm.
3B-AP-14 Construct solutions to problems using student-created components, such as procedures, modules and/or objects.
  1. 1.4 Karel Can't Turn Right
  2. 1.5 Functions in Karel
  3. 5.1 Functions and Parameters 1
  4. 5.2 Functions and Parameters 2
  5. 5.3 Functions and Parameters 3
  6. 5.4 Functions and Return Values 1
  7. 5.5 Functions and Return Values 2
  8. 5.7 JavaScript vs Karel
  9. 5.8 Basic JavaScript and Graphics Challenges
3B-AP-15 Analyze a large-scale computational problem and identify generalizable patterns that can be applied to a solution.
3B-AP-16 Demonstrate code reuse by creating programming solutions using libraries and APIs.
  1. 1.10 Super Karel
  2. 1.19 Ultra Karel
  3. 2.1 Practice PT: Pair-Programming Paint!
  4. 4.9 Random Numbers
  5. 5.7 JavaScript vs Karel
3B-AP-17 Plan and develop programs for broad audiences using a software life cycle process.
  1. 18.1 Intro to Design Thinking
  2. 18.2 Prototype
  3. 18.3 Test
  4. 18.4 Project Prep and Development
3B-AP-18 Explain security issues that might lead to compromised computer programs.
  1. 11.9 Cybersecurity
3B-AP-19 Develop programs for multiple computing platforms.
  1. 4.5 Key Events
3B-AP-20 Use version control systems, integrated development environments (IDEs), and collaborative tools and practices (code documentation) in a group software project.
3B-AP-21 Develop and use a series of test cases to verify that a program performs according to its design specifications.
3B-AP-22 Modify an existing program to add additional functionality and discuss intended and unintended implications (e.g., breaking other functionality).
  1. 1.4 Karel Can't Turn Right
3B-AP-23 Evaluate key qualities of a program through a process such as a code review.
3B-AP-24 Compare multiple programming languages and discuss how their features make them suitable for solving different types of problems.
3B-CS-01 Categorize the roles of operating system software.
3B-CS-02 Illustrate ways computing systems implement logic, input, and output through hardware components.
  1. 1.9 Abstraction
3B-DA-05 Use data analysis tools and techniques to identify patterns in data representing complex systems.
  1. 13.2 Visualizing and Interpreting Data
3B-DA-06 Select data collection tools and techniques to generate data sets that support a claim or communicate information.
  1. 13.3 Data Collection & Limitations
3B-DA-07 Evaluate the ability of models and simulations to test and support the refinement of hypotheses.
  1. 7.8 Simulation
3B-IC-25 Evaluate computational artifacts to maximize their beneficial effects and minimize harmful effects on society.
  1. 11.11 Creative Credit & Copyright
  2. 15.1 The Impacts of Computing
3B-IC-26 Evaluate the impact of equity, access, and influence on the distribution of computing resources in a global society.
  1. 11.10 The Impact of the Internet
  2. 12.1 The Effects of the Internet
3B-IC-27 Predict how computational innovations that have revolutionized aspects of our culture might evolve.
  1. 3.2 Uses of Programs
  2. 8.10 Cryptography
  3. 11.2 Internet Hardware
  4. 11.10 The Impact of the Internet
  5. 11.11 Creative Credit & Copyright
  6. 12.1 The Effects of the Internet
3B-IC-28 Debate laws and regulations that impact the development and use of software.
  1. 11.11 Creative Credit & Copyright
3B-NI-03 Describe the issues that impact network functionality (e.g., bandwidth, load, delay, topology).
  1. 11.2 Internet Hardware
3B-NI-04 Compare ways software developers protect devices and information from unauthorized access.
  1. 8.10 Cryptography
  2. 9.1 Practice PT: Steganography
  3. 11.9 Cybersecurity