Please enable JavaScript to use CodeHS

Standards Mapping

for Utah Computer Programming 2

83

Standards in this Framework

67

Standards Mapped

80%

Mapped to Course

Standard Lessons
UT.CP2.1.1a
Declare and initialize arrays/lists of all applicable types.
  1. 4.2 Lists
  2. 4.3 For Loops and Lists
UT.CP2.1.1b
Perform data input to and output from arrays/lists.
  1. 4.2 Lists
  2. 4.3 For Loops and Lists
  3. 4.4 List Methods
UT.CP2.1.1c
Perform operations on arrays/lists including sort arrays.
  1. 4.4 List Methods
UT.CP2.1.1d
Iterate through the structure (i.e., for-each, enhanced for, or iterators).
  1. 4.3 For Loops and Lists
UT.CP2.1.2a
Declare and initialize a dynamic array/list.
  1. 4.4 List Methods
UT.CP2.1.2b
Add and remove items from the array/list.
  1. 4.3 For Loops and Lists
  2. 4.4 List Methods
UT.CP2.1.2c
Output data from arrays/lists.
  1. 4.4 List Methods
UT.CP2.1.2d
Perform operations on arrays/lists.
  1. 4.4 List Methods
UT.CP2.1.2e
Iterate through the structure (i.e., for-each, enhanced for, or iterators).
  1. 4.3 For Loops and Lists
  2. 4.4 List Methods
UT.CP2.1.2f
Use a loop to iterate through the structure.
  1. 4.3 For Loops and Lists
  2. 4.4 List Methods
UT.CP2.1.3a
Compare string values.
  1. 2.6 String Methods
UT.CP2.1.3b
Find the length of a string.
  1. 2.4 Strings and For Loops
UT.CP2.1.3c
Copy part or all of string values into other strings.
  1. 2.2 Slicing
UT.CP2.1.3d
Concatenate string values.
  1. 2.1 Indexing
  2. 2.2 Slicing
UT.CP2.1.3e
Locate substring positions.
  1. 2.6 String Methods
UT.CP2.1.3f
Insert strings into other strings.
  1. 2.2 Slicing
UT.CP2.2.1a
Create and initialize sequential files.
  1. 7.5 Writing to File
UT.CP2.2.1b
Store data to sequential files.
  1. 7.5 Writing to File
UT.CP2.2.1c
Retrieve data from sequential files.
  1. 7.2 Reading Character from File
  2. 7.3 Reading Line from File
  3. 7.4 Reading All Lines from File
UT.CP2.2.1d
Update sequential files.
  1. 7.6 Move File Pointer Position
UT.CP2.2.2a
An API (Application Programming Interface) is a set of rules and protocols that enables different software applications to communicate with each other and exchange data or functionality.
UT.CP2.2.2b
An API is like a bridge that lets different software systems exchange data or use each other's features without needing to know what's happening behind the scenes.
UT.CP2.2.2c
Know the different types of APIs (ex: REST, SOAP, GraphQL, WebSocket, Database API, etc.).
UT.CP2.2.2d
Implement or demonstrate an API.
UT.CP2.2.2e
Demonstrate how to use an API in program development.
UT.CP2.3.1a
Understand that variables and functions/methods/procedures have scope, which influences where they can be declared and accessed.
  1. 1.3 Namespaces in Functions
UT.CP2.3.1b
Declare and access local variables in a program.
  1. 1.3 Namespaces in Functions
UT.CP2.3.1c
Declare and access global variables in a program.
  1. 1.3 Namespaces in Functions
UT.CP2.3.2a
Understand the correlation between arguments (inputs) and parameters (variables).
  1. 1.2 Functions and Parameters
UT.CP2.3.2b
Understand that functions/methods/procedures may or may not require arguments.
  1. 1.1 Functions
  2. 1.2 Functions and Parameters
UT.CP2.3.2c
Understand that functions/methods/procedures may or may not return values.
  1. 1.1 Functions
  2. 1.4 Functions and Return Values
UT.CP2.3.2d
Define functions/methods/procedures:
  1. 1.1 Functions
UT.CP2.3.2d.i
with parameters
  1. 1.2 Functions and Parameters
  2. 1.4 Functions and Return Values
UT.CP2.3.2d.ii
without parameters
  1. 1.1 Functions
  2. 1.5 Exceptions
UT.CP2.3.2d.iii
with return values
  1. 1.4 Functions and Return Values
UT.CP2.3.2d.iv
without return values
  1. 1.1 Functions
  2. 1.2 Functions and Parameters
UT.CP2.3.2d.v
default parameters
  1. 1.2 Functions and Parameters
UT.CP2.3.3a
Identify repetitive or redundant code in an application.
  1. 1.2 Functions and Parameters
  2. 1.4 Functions and Return Values
UT.CP2.3.3b
Understand the role abstraction plays in computer programming.
  1. 1.2 Functions and Parameters
UT.CP2.3.3c
Demonstrate how to abstract multiple steps into a function/method/procedure.
  1. 1.1 Functions
  2. 6.1 Project: Guess the Word
UT.CP2.3.3d
Identify the characteristics of a well-defined function/method/procedure (examples: shorter code, efficiency, reduced memory consumption, high reliability, readability, abstraction).
  1. 1.2 Functions and Parameters
  2. 1.4 Functions and Return Values
UT.CP2.4.1a
Instantiate objects.
  1. 8.1 Classes and Objects
UT.CP2.4.1b
Use object data members (i.e., Java's arr.length).
  1. 2.6 String Methods
UT.CP2.4.1c
Use object member functions (methods).
  1. 2.6 String Methods
  2. 4.4 List Methods
  3. 7.2 Reading Character from File
UT.CP2.4.2
Demonstrate the ability to create user-defined classes.
  1. 8.1 Classes and Objects
UT.CP2.4.2a
Create and use data members (instance variables).
  1. 8.1 Classes and Objects
  2. 8.5 Class Variables vs. Instance Variables
UT.CP2.4.2b
Create a constructor to initialize the data members.
  1. 8.1 Classes and Objects
UT.CP2.4.2c
Create and use member functions (methods).
  1. 8.2 Methods
UT.CP2.5.1
Demonstrate the ability to comprehend code outcomes.
  1. 1.6 Functions Quiz
  2. 2.7 Strings Quiz
UT.CP2.5.1a
Tracing - Cognitively following the passes of a loop, nested function calls, change in value of global and local scoped variables, etc.
  1. 1.6 Functions Quiz
UT.CP2.5.1b
Debugging - Utilizing 3rd party tools (IDEs) to step through a program and troubleshoot.
  1. 4.1 Tuples
UT.CP2.5.1c
Testing - Validating the outputs of a program and testing its robustness (i.e., boundary conditions, invalid inputs, unexpected scenarios, incorrect results, etc.).
  1. 1.2 Functions and Parameters
  2. 1.5 Exceptions
  3. 2.1 Indexing
UT.CP2.6.1a
Formalize specifications.
  1. 3.1 Project: The Game of Pig
UT.CP2.6.1b
Choose proper input parameters.
  1. 1.2 Functions and Parameters
UT.CP2.6.1c
Choose appropriate data structures and processing.
  1. 8.1 Classes and Objects
UT.CP2.6.1d
Design appropriate output.
  1. 3.1 Project: The Game of Pig
UT.CP2.6.1e
Use appropriate test data.
  1. 3.1 Project: The Game of Pig
UT.CP2.6.1f
Write good documentation.
  1. 3.1 Project: The Game of Pig
UT.CP2.6.2a
Divide a project among programmers.
  1. 3.1 Project: The Game of Pig
UT.CP2.6.2b
Present work to a group.
  1. 9.1 Computer Science Careers
UT.CP2.6.2c
Coordinate work with others in the group.
  1. 3.1 Project: The Game of Pig
UT.CP2.6.2d
Complete assigned work according to predetermined deadlines.
  1. 3.1 Project: The Game of Pig
UT.CP2.6.2e
Participate in a peer performance evaluation.
  1. 3.1 Project: The Game of Pig
UT.CP2.6.2f
Demonstrate professionalism in team relationships, communication, timeliness, and attitude.
  1. 3.1 Project: The Game of Pig
UT.CP2.7.1a
Explain the ethical reasons for creating reliable and robust software.
  1. 9.1 Computer Science Careers
UT.CP2.7.1b
Explain the impact software can have on society (i.e., privacy, piracy, copyright laws, ease of use, etc.).
  1. 9.1 Computer Science Careers
UT.CP2.7.1c
Show how security concerns can be addressed in an application (i.e., biometrics, passwords, information hiding, etc.).
  1. 9.1 Computer Science Careers
UT.CP2.7.1d
Describe how computer-controlled automation affects a workplace and society.
  1. 9.1 Computer Science Careers
UT.CP2.7.1e
Give examples of ways to protect information on computer systems (attacks, viruses, malware, etc.).
UT.CP2.7.2a
Responsible use of AI, which includes recognizing when to use AI, using appropriate prompts to produce desired output, determining accuracy of information, how AI has contributed to a product, and communicating that clearly.
UT.CP2.7.2b
The importance of transparency and documentation, both in their own use of AI tools and in verifying the authenticity of others' work.
UT.CP2.7.2c
How AI influences all work, including the evolving boundaries and tightening restrictions around intellectual property and copyright.
UT.CP2.7.3a
Academic integrity and attribution.
UT.CP2.7.3b
Know when AI use is appropriate.
UT.CP2.7.3c
Understand disclosing when you use AI.
UT.CP2.7.3d
Understanding vs. over-reliance on AI.
UT.CP2.7.3e
Verifying and debugging AI generated code.
UT.CP2.7.3f
Reviewing the code to make sure there are no coding errors.
UT.CP2.7.3g
Ethical implications of AI written software.
UT.CP2.8.1a
Identify the members of a computer programming/software engineering team: team leader, analyst, senior developer, junior developer, and client/subject matter expert.
  1. 9.1 Computer Science Careers
UT.CP2.8.1b
Describe work performed by each member of the computer programming/software engineering team.
  1. 9.1 Computer Science Careers
UT.CP2.8.1c
Investigate trends and traits associated with computer programming/software engineering careers (creativity, technical, leadership, collaborative, problem solving, design, etc.).
  1. 9.1 Computer Science Careers
UT.CP2.8.1d
Discuss related career pathways.
  1. 9.1 Computer Science Careers
  2. 9.2 Explore a Career