Please enable JavaScript to use CodeHS

Standards Mapping

for Utah Computer Programming 2

61

Standards in this Framework

37

Standards Mapped

60%

Mapped to Course

Standard Lessons
UT.CP2.1.1a
Declare and initialize static arrays/lists of all applicable types
UT.CP2.1.1b
Perform data input to and output from static arrays/lists
UT.CP2.1.1c
Perform operations on static arrays/lists including sort arrays
UT.CP2.1.1d
Iterate through the static structure (i.e., for-each, enhanced for, or iterators)
UT.CP2.1.2a
Declare and initialize a dynamic array/list
  1. 7.1 Intro to Lists/Arrays
UT.CP2.1.2b
Add and remove items from the dynamic array/list
  1. 7.3 Adding/Removing From an Array
UT.CP2.1.2c
Output data from dynamic arrays/lists
  1. 7.2 Indexing Into an Array
UT.CP2.1.2d
Perform operations on dynamic arrays/lists
  1. 7.4 Array Length and Looping Through Arrays
UT.CP2.1.2e
Iterate through the dynamic structure (i.e. for-each, enhanced for, or iterators)
  1. 7.4 Array Length and Looping Through Arrays
  2. 7.5 Iterating Over an Array
  3. 7.6 Finding an Element in a List
  4. 7.7 Removing an Element From an Array
UT.CP2.1.2f
Use a loop to iterate through the dynamic structure
  1. 7.4 Array Length and Looping Through Arrays
  2. 7.5 Iterating Over an Array
  3. 7.6 Finding an Element in a List
  4. 7.7 Removing an Element From an Array
UT.CP2.1.3a
Compare string values
  1. 37.1 Practice PT: Testing 1, 2, 3 ...
UT.CP2.1.3b
Find the length of a string
  1. 37.1 Practice PT: Testing 1, 2, 3 ...
UT.CP2.1.3c
Copy part or all of string values into other strings
  1. 37.1 Practice PT: Testing 1, 2, 3 ...
UT.CP2.1.3d
Concatenate string values
  1. 3.6 Basic Math in JavaScript
  2. 37.1 Practice PT: Testing 1, 2, 3 ...
UT.CP2.1.3e
Locate substring positions
  1. 37.1 Practice PT: Testing 1, 2, 3 ...
UT.CP2.1.3f
Insert strings into other strings
  1. 37.1 Practice PT: Testing 1, 2, 3 ...
UT.CP2.2.1a
Create and initialize sequential files
UT.CP2.2.1b
Store data to sequential files
UT.CP2.2.1c
Retrieve data from sequential files
UT.CP2.2.1d
Update sequential files
UT.CP2.3.1a
Understand that variables and functions have scope, which influences where they can be declared and accessed
  1. 5.6 Local Variables and Scope
UT.CP2.3.1b
Declare and access local variables in a program
  1. 5.6 Local Variables and Scope
UT.CP2.3.1c
Declare and access global variables in a program
  1. 5.6 Local Variables and Scope
UT.CP2.3.2a
Understand the correlation between arguments (inputs) and parameters (variables)
  1. 5.1 Functions and Parameters 1
  2. 5.2 Functions and Parameters 2
  3. 5.3 Functions and Parameters 3
UT.CP2.3.2b
Understand that functions may or may not require arguments
  1. 5.1 Functions and Parameters 1
  2. 5.2 Functions and Parameters 2
  3. 5.3 Functions and Parameters 3
UT.CP2.3.2c
Understand that functions may or may not return values
  1. 5.1 Functions and Parameters 1
  2. 5.2 Functions and Parameters 2
  3. 5.3 Functions and Parameters 3
  4. 5.4 Functions and Return Values 1
  5. 5.5 Functions and Return Values 2
UT.CP2.3.2d
Define function(s), with parameters, without parameters, with return values, without return values, default parameters
  1. 1.5 Functions in Karel
  2. 5.1 Functions and Parameters 1
  3. 5.2 Functions and Parameters 2
  4. 5.3 Functions and Parameters 3
  5. 5.4 Functions and Return Values 1
  6. 5.5 Functions and Return Values 2
UT.CP2.3.3a
Identify repetitive or redundant code in an application
UT.CP2.3.3b
Understand the role abstraction plays in computer programming
  1. 1.9 Abstraction
UT.CP2.3.3c
Demonstrate how to abstract multiple steps into a function
  1. 1.7 Top Down Design and Decomposition in Karel
  2. 1.9 Abstraction
UT.CP2.3.3d
Identify the characteristics of a well-defined function. Examples: shorter code, efficiency, reduced memory consumption, high reliability, readability, abstraction
  1. 1.4 Karel Can't Turn Right
  2. 1.5 Functions in Karel
  3. 1.7 Top Down Design and Decomposition in Karel
UT.CP2.4.1a
Instantiate objects
UT.CP2.4.1b
Use object data members (i.e., Java’s arr. length)
UT.CP2.4.1c
Use object member functions (methods)
UT.CP2.4.2a
Create and use data members (instance variables)
UT.CP2.4.2b
Create a constructor to initialize the data members
UT.CP2.4.2c
Create and use member functions (methods)
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. 5.1 Functions and Parameters 1
  2. 5.2 Functions and Parameters 2
  3. 5.3 Functions and Parameters 3
  4. 5.6 Local Variables and Scope
  5. 7.4 Array Length and Looping Through Arrays
  6. 7.6 Finding an Element in a List
  7. 7.7 Removing an Element From an Array
UT.CP2.5.1b
Debugging - Utilizing 3rd party tools (IDE’s) to step through a program and troubleshoot
  1. 1.16 Debugging Strategies
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. 3.5 User Input
UT.CP2.6.1a
Formalize specifications
UT.CP2.6.1b
Choose proper input parameters
  1. 5.1 Functions and Parameters 1
  2. 5.2 Functions and Parameters 2
  3. 5.3 Functions and Parameters 3
UT.CP2.6.1c
Choose appropriate data structures and processing
  1. 7.1 Intro to Lists/Arrays
  2. 33.1 Intro to Objects/Maps
  3. 33.2 Basics of Objects
  4. 33.3 Iterating Over an Object
  5. 33.4 When Do I Use an Object?
  6. 33.5 Intro to Sets
  7. 33.6 Intro to Grids
  8. 33.7 Looping Over a Grid
  9. 33.8 Grid Example: Get a Row
  10. 33.9 Data Structures Challenges
UT.CP2.6.1d
Design appropriate output
  1. 5.4 Functions and Return Values 1
  2. 5.5 Functions and Return Values 2
UT.CP2.6.1e
Use appropriate test data
UT.CP2.6.1f
Write good documentation
  1. 1.8 Commenting Your Code
UT.CP2.6.2a
Divide a project among programmers
  1. 2.1 Practice PT: Pair-Programming Paint!
UT.CP2.6.2b
Present work to a group
  1. 6.1 Project: Tell a Story
  2. 12.1 The Effects of the Internet
UT.CP2.6.2c
Coordinate work with others in the group
  1. 2.1 Practice PT: Pair-Programming Paint!
UT.CP2.6.2d
Complete assigned work according to predetermined deadlines
UT.CP2.6.2e
Participate in a peer performance evaluation
  1. 18.3 Test
UT.CP2.6.2f
Demonstrate professionalism in team relationships, communication, timeliness, and attitude
UT.CP2.7.1a
Explain the ethical reasons for creating reliable and robust software
UT.CP2.7.1b
Explain the impact software can have on society (i.e., privacy, piracy, copyright laws, ease of use, ete.)
  1. 11.11 Creative Credit & Copyright
UT.CP2.7.1c
Show how security concerns can be addressed in an application (i.e., biometrics, passwords, information hiding, etc.)
  1. 11.9 Cybersecurity
UT.CP2.7.1d
Describe how computer-controlled automation affects a workplace and society
  1. 11.10 The Impact of the Internet
UT.CP2.7.1e
Give examples of ways to protect information on computer systems (attacks, viruses, malware, etc.)
  1. 11.9 Cybersecurity
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
UT.CP2.8.1b
Describe work performed by each member of the computer programming/software engineering team
UT.CP2.8.1c
Investigate trends and traits associated with computer programming/software engineering careers (creativity, technical, leadership, collaborative, problem solving, design, etc.)
UT.CP2.8.1d
Discuss related career (computer programming/software engineering) pathways