K-12 Computer Science Standards

Utah Computer Programming 2

61 Standards

1

UT.CP2.1.1a

Declare and initialize static arrays/lists of all applicable types

2

UT.CP2.1.1b

Perform data input to and output from static arrays/lists

3

UT.CP2.1.1c

Perform operations on static arrays/lists including sort arrays

4

UT.CP2.1.1d

Iterate through the static structure (i.e., for-each, enhanced for, or iterators)

5

UT.CP2.1.2a

Declare and initialize a dynamic array/list

6

UT.CP2.1.2b

Add and remove items from the dynamic array/list

7

UT.CP2.1.2c

Output data from dynamic arrays/lists

8

UT.CP2.1.2d

Perform operations on dynamic arrays/lists

9

UT.CP2.1.2e

Iterate through the dynamic structure (i.e. for-each, enhanced for, or iterators)

10

UT.CP2.1.2f

Use a loop to iterate through the dynamic structure

11

UT.CP2.1.3a

Compare string values

12

UT.CP2.1.3b

Find the length of a string

13

UT.CP2.1.3c

Copy part or all of string values into other strings

14

UT.CP2.1.3d

Concatenate string values

15

UT.CP2.1.3e

Locate substring positions

16

UT.CP2.1.3f

Insert strings into other strings

17

UT.CP2.2.1a

Create and initialize sequential files

18

UT.CP2.2.1b

Store data to sequential files

19

UT.CP2.2.1c

Retrieve data from sequential files

20

UT.CP2.2.1d

Update sequential files

21

UT.CP2.3.1a

Understand that variables and functions have scope, which influences where they can be declared and accessed

22

UT.CP2.3.1b

Declare and access local variables in a program

23

UT.CP2.3.1c

Declare and access global variables in a program

24

UT.CP2.3.2a

Understand the correlation between arguments (inputs) and parameters (variables)

25

UT.CP2.3.2b

Understand that functions may or may not require arguments

26

UT.CP2.3.2c

Understand that functions may or may not return values

27

UT.CP2.3.2d

Define function(s), with parameters, without parameters, with return values, without return values, default parameters

28

UT.CP2.3.3a

Identify repetitive or redundant code in an application

29

UT.CP2.3.3b

Understand the role abstraction plays in computer programming

30

UT.CP2.3.3c

Demonstrate how to abstract multiple steps into a function

31

UT.CP2.3.3d

Identify the characteristics of a well-defined function. Examples: shorter code, efficiency, reduced memory consumption, high reliability, readability, abstraction

32

UT.CP2.4.1a

Instantiate objects

33

UT.CP2.4.1b

Use object data members (i.e., Java’s arr. length)

34

UT.CP2.4.1c

Use object member functions (methods)

35

UT.CP2.4.2a

Create and use data members (instance variables)

36

UT.CP2.4.2b

Create a constructor to initialize the data members

37

UT.CP2.4.2c

Create and use member functions (methods)

38

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.

39

UT.CP2.5.1b

Debugging - Utilizing 3rd party tools (IDE’s) to step through a program and troubleshoot

40

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.)

41

UT.CP2.6.1a

Formalize specifications

42

UT.CP2.6.1b

Choose proper input parameters

43

UT.CP2.6.1c

Choose appropriate data structures and processing

44

UT.CP2.6.1d

Design appropriate output

45

UT.CP2.6.1e

Use appropriate test data

46

UT.CP2.6.1f

Write good documentation

47

UT.CP2.6.2a

Divide a project among programmers

48

UT.CP2.6.2b

Present work to a group

49

UT.CP2.6.2c

Coordinate work with others in the group

50

UT.CP2.6.2d

Complete assigned work according to predetermined deadlines

51

UT.CP2.6.2e

Participate in a peer performance evaluation

52

UT.CP2.6.2f

Demonstrate professionalism in team relationships, communication, timeliness, and attitude

53

UT.CP2.7.1a

Explain the ethical reasons for creating reliable and robust software

54

UT.CP2.7.1b

Explain the impact software can have on society (i.e., privacy, piracy, copyright laws, ease of use, ete.)

55

UT.CP2.7.1c

Show how security concerns can be addressed in an application (i.e., biometrics, passwords, information hiding, etc.)

56

UT.CP2.7.1d

Describe how computer-controlled automation affects a workplace and society

57

UT.CP2.7.1e

Give examples of ways to protect information on computer systems (attacks, viruses, malware, etc.)

58

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

59

UT.CP2.8.1b

Describe work performed by each member of the computer programming/software engineering team

60

UT.CP2.8.1c

Investigate trends and traits associated with computer programming/software engineering careers (creativity, technical, leadership, collaborative, problem solving, design, etc.)

61

UT.CP2.8.1d

Discuss related career (computer programming/software engineering) pathways

Ready to Start Learning?

Explore our courses aligned with these standards

View School Program