Standards in this Framework
Standards Mapped
Mapped to Course
| Standard | Lessons |
|---|---|
|
UT.CP2.1.1a
Declare and initialize arrays/lists of all applicable types. |
|
|
UT.CP2.1.1b
Perform data input to and output from arrays/lists. |
|
|
UT.CP2.1.1c
Perform operations on arrays/lists including sort arrays. |
|
|
UT.CP2.1.1d
Iterate through the structure (i.e., for-each, enhanced for, or iterators). |
|
|
UT.CP2.1.2a
Declare and initialize a dynamic array/list. |
|
|
UT.CP2.1.2b
Add and remove items from the array/list. |
|
|
UT.CP2.1.2c
Output data from arrays/lists. |
|
|
UT.CP2.1.2d
Perform operations on arrays/lists. |
|
|
UT.CP2.1.2e
Iterate through the structure (i.e., for-each, enhanced for, or iterators). |
|
|
UT.CP2.1.2f
Use a loop to iterate through the structure. |
|
|
UT.CP2.1.3a
Compare string values. |
|
|
UT.CP2.1.3b
Find the length of a string. |
|
|
UT.CP2.1.3c
Copy part or all of string values into other strings. |
|
|
UT.CP2.1.3d
Concatenate string values. |
|
|
UT.CP2.1.3e
Locate substring positions. |
|
|
UT.CP2.1.3f
Insert strings into other strings. |
|
|
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.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. |
|
|
UT.CP2.3.1b
Declare and access local variables in a program. |
|
|
UT.CP2.3.1c
Declare and access global variables in a program. |
|
|
UT.CP2.3.2a
Understand the correlation between arguments (inputs) and parameters (variables). |
|
|
UT.CP2.3.2b
Understand that functions/methods/procedures may or may not require arguments. |
|
|
UT.CP2.3.2c
Understand that functions/methods/procedures may or may not return values. |
|
|
UT.CP2.3.2d
Define functions/methods/procedures: |
|
|
UT.CP2.3.2d.i
with parameters |
|
|
UT.CP2.3.2d.ii
without parameters |
|
|
UT.CP2.3.2d.iii
with return values |
|
|
UT.CP2.3.2d.iv
without return values |
|
|
UT.CP2.3.2d.v
default parameters |
|
|
UT.CP2.3.3a
Identify repetitive or redundant code in an application. |
|
|
UT.CP2.3.3b
Understand the role abstraction plays in computer programming. |
|
|
UT.CP2.3.3c
Demonstrate how to abstract multiple steps into a function/method/procedure. |
|
|
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). |
|
|
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.2
Demonstrate the ability to create user-defined classes. |
|
|
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.1
Demonstrate the ability to comprehend code outcomes. |
|
|
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. |
|
|
UT.CP2.5.1b
Debugging - Utilizing 3rd party tools (IDEs) to step through a program and troubleshoot. |
|
|
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.). |
|
|
UT.CP2.6.1a
Formalize specifications. |
|
|
UT.CP2.6.1b
Choose proper input parameters. |
|
|
UT.CP2.6.1c
Choose appropriate data structures and processing. |
|
|
UT.CP2.6.1d
Design appropriate output. |
|
|
UT.CP2.6.1e
Use appropriate test data. |
|
|
UT.CP2.6.1f
Write good documentation. |
|
|
UT.CP2.6.2a
Divide a project among programmers. |
|
|
UT.CP2.6.2b
Present work to a group. |
|
|
UT.CP2.6.2c
Coordinate work with others in the group. |
|
|
UT.CP2.6.2d
Complete assigned work according to predetermined deadlines. |
|
|
UT.CP2.6.2e
Participate in a peer performance evaluation. |
|
|
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, etc.). |
|
|
UT.CP2.7.1c
Show how security concerns can be addressed in an application (i.e., biometrics, passwords, information hiding, etc.). |
|
|
UT.CP2.7.1d
Describe how computer-controlled automation affects a workplace and society. |
|
|
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. |
|
|
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 pathways. |
|