Please enable JavaScript to use CodeHS

Standards Mapping

for Utah Computer Programming Advanced

Clear selection Print / Download

69

Standards in this Framework

61

Standards Mapped

88%

Mapped to Course

Standard Lessons
CPA.1.1a
Develop complex applications using input, calculations, and output
  1. Advanced Python and AI Programming
  2. 4.3 Items, Choices, and the Loop
  3. 7.5 Put It All Together
CPA.1.1b
Develop complex applications using control structures (loops, if else, select, etc.)
  1. Advanced Python and AI Programming
  2. 4.3 Items, Choices, and the Loop
  3. 7.5 Put It All Together
CPA.1.1c
Develop complex applications in object-oriented programming
  1. Advanced Python and AI Programming
  2. 2.8 Composition
  3. 4.2 Building Your Characters
CPA.1.1d
Develop complex applications using data structures
  1. Advanced Python and AI Programming
  2. 5.7 Basic Trees
  3. 7.3 Playlists and Player Features
CPA.1.1e
Develop complex applications using files (sequential files)
  1. Advanced Python and AI Programming
  2. 9.2 Build Your Dataset
  3. Utah Computer Programming 1 and 2
  4. 15.3 Reading Line from File
  5. 15.4 Reading All Lines from File
  6. 15.5 Writing to File
  7. Texas Computer Science I in Python
  8. 12.3 Reading Line from File
  9. 12.4 Reading All Lines from File
  10. IB Computer Science SL Resources
  11. 10.3 Reading Line from File
  12. 10.4 Reading All Lines from File
CPA.1.2a
Analyze and solve recursive functions or methods
  1. Advanced Python and AI Programming
  2. 6.9 Recursion
CPA.1.2b
Utilize recursive algorithms to solve a problem
  1. Advanced Python and AI Programming
  2. 6.9 Recursion
CPA.1.2c
Identify the base case, recursive case, and action of each recursive function or method
  1. Advanced Python and AI Programming
  2. 6.9 Recursion
CPA.1.2d
(Optional) Understand the use of a recursive helper function or method
CPA.1.3a
Create and use overloaded constructors and methods
  1. Advanced Python and AI Programming
  2. 2.6 Constructors
CPA.1.3b
Create and use overloaded operators (C++)
  1. Advanced Python and AI Programming
  2. 2.7 Magic Methods
CPA.2.1a
Develop a binary search
  1. Advanced Python and AI Programming
  2. 6.5 Binary Search
  3. IB Computer Science SL Resources
  4. 9.4 Binary Search
CPA.2.1b
Compare the efficiency and appropriateness of sequential and binary searches
  1. Advanced Python and AI Programming
  2. 6.5 Binary Search
  3. 7.4 Searching and Sorting the Library
  4. IB Computer Science SL Resources
  5. 9.4 Binary Search
CPA.2.2a
Sort arrays using iterative sorting algorithms (selection, insertion, bubble)
  1. Advanced Python and AI Programming
  2. 6.6 Bubble Sort
  3. 6.7 Selection Sort
  4. 6.8 Insertion Sort
  5. IB Computer Science SL Resources
  6. 9.5 Bubble Sort
  7. 9.6 Selection Sort
CPA.2.2b
Recognize recursive sorting algorithms (merge, quick, heap)
  1. Advanced Python and AI Programming
  2. 6.10 Merge Sort
  3. 6.11 Quick Sort
CPA.2.2c
Recognize sorting data structures using quadratic (n2) and binary (n log n) sorts
  1. Advanced Python and AI Programming
  2. 6.10 Merge Sort
  3. 6.11 Quick Sort
  4. 7.4 Searching and Sorting the Library
CPA.2.2d
Compare the efficiency of different sorting algorithms
  1. Advanced Python and AI Programming
  2. 6.11 Quick Sort
  3. 7.4 Searching and Sorting the Library
CPA.3.1a
Initialize multidimensional arrays
  1. Texas Computer Science I in Python
  2. 10.6 2d Lists
CPA.3.1b
Input and output data into and from multidimensional arrays
  1. Texas Computer Science I in Python
  2. 10.6 2d Lists
CPA.3.1c
Perform operations on multidimensional arrays
  1. Texas Computer Science I in Python
  2. 10.6 2d Lists
CPA.3.1d
Perform searches on multidimensional arrays
  1. Advanced Python and AI Programming
  2. 6.9 Recursion
  3. Texas Computer Science I in Python
  4. 10.6 2d Lists
CPA.4.1a
Declare stack structures
  1. Advanced Python and AI Programming
  2. 5.3 Last-In, First-Out
  3. IB Computer Science SL Resources
  4. 8.5 Last-In, First-Out
CPA.4.1b
Initialize stacks
  1. Advanced Python and AI Programming
  2. 5.3 Last-In, First-Out
  3. IB Computer Science SL Resources
  4. 8.5 Last-In, First-Out
CPA.4.1c
Check for empty and full stacks
  1. Advanced Python and AI Programming
  2. 5.3 Last-In, First-Out
  3. IB Computer Science SL Resources
  4. 8.5 Last-In, First-Out
CPA.4.1d
Push on to and pop off values from stacks (Last in, First out)
  1. Advanced Python and AI Programming
  2. 5.3 Last-In, First-Out
  3. IB Computer Science SL Resources
  4. 8.5 Last-In, First-Out
CPA.4.1e
Develop an application that utilizes stacks
  1. Advanced Python and AI Programming
  2. 5.3 Last-In, First-Out
  3. 7.3 Playlists and Player Features
  4. IB Computer Science SL Resources
  5. 8.5 Last-In, First-Out
CPA.4.2a
Declare queue structures
  1. Advanced Python and AI Programming
  2. 5.4 First-In, First-Out
  3. IB Computer Science SL Resources
  4. 8.6 First-In, First-Out
CPA.4.2b
Check for empty and full queues
  1. Advanced Python and AI Programming
  2. 5.4 First-In, First-Out
  3. IB Computer Science SL Resources
  4. 8.6 First-In, First-Out
CPA.4.2c
Initialize queues
  1. Advanced Python and AI Programming
  2. 5.4 First-In, First-Out
  3. IB Computer Science SL Resources
  4. 8.6 First-In, First-Out
CPA.4.2d
Enqueue values onto and dequeue values off of queues (First in, First out)
  1. Advanced Python and AI Programming
  2. 5.4 First-In, First-Out
  3. IB Computer Science SL Resources
  4. 8.6 First-In, First-Out
CPA.4.2e
Develop an application that utilize queues
  1. Advanced Python and AI Programming
  2. 5.4 First-In, First-Out
  3. 8.2 Breadth-First Search
  4. IB Computer Science SL Resources
  5. 8.6 First-In, First-Out
CPA.5.1a
Create classes with minimal extraneous relationships (high cohesion and low coupling)
CPA.5.1b
Demonstrate and use composition and aggregation (HAS-A) relationships
  1. Advanced Python and AI Programming
  2. 2.8 Composition
CPA.5.1c
Demonstrate the use of class variables (static variables)
  1. Utah Computer Programming 1 and 2
  2. 16.5 Class Variables vs. Instance Variables
  3. Texas Computer Science I in Python
  4. 18.3 Class Variables vs. Instance Variables
CPA.5.1d
Understand the principle of encapsulation as it relates to object-oriented programming
  1. Advanced Python and AI Programming
  2. 2.3 Getters and Setters
CPA.5.2a
Utilize class hierarchies (parent-child relationships, superclass-subclass relationships)
  1. Advanced Python and AI Programming
  2. 2.4 Inheritance
  3. 4.2 Building Your Characters
CPA.5.2b
Demonstrate IS-A relationships
  1. Advanced Python and AI Programming
  2. 2.4 Inheritance
  3. 2.8 Composition
CPA.5.2c
Override methods. Understand how to call the overriding method from the child
  1. Advanced Python and AI Programming
  2. 2.5 Polymorphism
CPA.5.2d
Demonstrate the protected modifier
CPA.5.2e
Call a parent class constructor from the child’s constructor
  1. Advanced Python and AI Programming
  2. 2.4 Inheritance
CPA.5.3a
Create and implement abstract classes
CPA.5.3b
Implement interfaces (purely abstract classes)
CPA.5.3c
Know difference between abstract & interface classes
CPA.5.4a
Demonstrate that a parent object variable can hold an instance of a child class
  1. Advanced Python and AI Programming
  2. 2.5 Polymorphism
CPA.5.4b
Determine IS-A relationships via code (e.g. instanceof, typeof, isa)
  1. Advanced Python and AI Programming
  2. 2.5 Polymorphism
  3. Texas Computer Science I in Python
  4. 18.4 Inheritance
CPA.5.4c
Demonstrate typecasting via method calls of inherited objects
CPA.6.1a
Create an activity diagram
  1. Arkansas Software Development
  2. 7.3 Requirements and Planning
CPA.6.1b
Create a class diagram for the class hierarchy of a program
  1. IB Computer Science SL Resources
  2. 11.10 Designing Classes
  3. Arkansas Software Development
  4. 7.3 Requirements and Planning
CPA.6.1c
Create a sequence diagram for a method
CPA.6.1d
Translate diagrams to code
  1. Advanced Python and AI Programming
  2. 11.9 Flowcharts and Pseudocode
  3. IB Computer Science SL Resources
  4. 1.2 Flowcharts and Pseudocode
CPA.7.1a
Students will understand that API’s allow programs to talk to each other
  1. Advanced Python and AI Programming
  2. 3.3 Exploring Web Data with Python
CPA.7.1b
Students will demonstrate the use of an API in the development of a program
  1. Advanced Python and AI Programming
  2. 3.3 Exploring Web Data with Python
CPA.8.1
Create an individual program of significant complexity.
  1. Advanced Python and AI Programming
  2. 4.3 Items, Choices, and the Loop
  3. 4.4 Import Packages
  4. 7.5 Put It All Together
CPA.8.1a
Create design documentation for the project
  1. Advanced Python and AI Programming
  2. 4.1 Project Launch and Design
  3. 7.1 Plan Your Music Library
  4. 9.1 Plan Your Classifier
  5. Arkansas Software Development
  6. 7.3 Requirements and Planning
  7. 11.1 Project Overview
CPA.8.1b
Follow accepted object-oriented programming methodology when writing the code
  1. Advanced Python and AI Programming
  2. 4.2 Building Your Characters
  3. 4.3 Items, Choices, and the Loop
CPA.8.2
Compile a portfolio of the individual and group programs developed.
  1. Arkansas Software Development
  2. 11.4 Portfolio
CPA.8.2a
Include sample design work
  1. Arkansas Software Development
  2. 11.4 Portfolio
CPA.8.2b
Include sample program source code
  1. Arkansas Software Development
  2. 11.4 Portfolio
CPA.9.1a
Explain the impact software can have on society (i.e., privacy, piracy, copyright laws, ease of use, etc.)
  1. Advanced Python and AI Programming
  2. 8.11 Decision Trees
  3. 9.6 Showcase and Reflection
  4. Utah Computer Programming 1 and 2
  5. 17.1 Cyber Ethics and Laws
  6. 17.4 Software Licenses
CPA.9.1b
Explain the ethical reasons for creating reliable and robust software
  1. Advanced Python and AI Programming
  2. 8.10 Overfitting and Evaluation
  3. Utah Computer Programming 1 and 2
  4. 8.5 Software Reliability and Automation's Impact
CPA.9.1c
Describe how computer-controlled automation affects a workplace and society
  1. Advanced Python and AI Programming
  2. 8.12 Neural Networks and Perceptrons
  3. Utah Computer Programming 1 and 2
  4. 8.5 Software Reliability and Automation's Impact
CPA.9.2
Students will understand the ethical use of AI in coding and how it impacts the programming field.
  1. Utah Computer Programming 1 and 2
  2. 18.8 Introduction to AI-Assisted Coding
CPA.9.2a.i
Know when AI use is appropriate
  1. Utah Computer Programming 1 and 2
  2. 18.1 How to Use AI Tools Safely
  3. 18.8 Introduction to AI-Assisted Coding
CPA.9.2a.ii
Understand when and how to disclose the use of AI
  1. Utah Computer Programming 1 and 2
  2. 18.8 Introduction to AI-Assisted Coding
CPA.9.2b.i
Understand why it is risky to let AI write your code without human oversight.
  1. Utah Computer Programming 1 and 2
  2. 18.8 Introduction to AI-Assisted Coding
CPA.9.2b.ii
Know the importance of understanding programming concepts.
  1. Utah Computer Programming 1 and 2
  2. 18.8 Introduction to AI-Assisted Coding
CPA.9.2c.i
Understand the importance of reviewing all AI generated code for accuracy.
  1. Utah Computer Programming 1 and 2
  2. 18.8 Introduction to AI-Assisted Coding
CPA.9.2c.ii
Understand that AI tools can be helpful for debugging code, but it’s important to double-check their suggestions using your own programming knowledge
  1. Utah Computer Programming 1 and 2
  2. 18.8 Introduction to AI-Assisted Coding
CPA.9.2d.i
Ethical use of AI-written software requires human oversight, bias awareness, security testing, transparency, and accountability to ensure software is fair, safe, and responsible.
  1. Utah Computer Programming 1 and 2
  2. 18.8 Introduction to AI-Assisted Coding