CP1.1.1 |
Demonstrate concept knowledge of different languages. |
Lessons
|
CP1.1.1a |
Describe the difference between an interpreted language vs a compiled language |
Lessons
|
CP1.1.1b |
Identify characteristics of high-level and low-level languages |
Lessons
|
CP1.1.2 |
Demonstrate the ability to use an IDE. |
Lessons
|
CP1.1.2a |
Use an IDE to develop, compile, and run programs |
Lessons
|
CP1.1.2b |
Understand the difference between syntax, run-time, and logic errors |
Lessons
|
CP1.1.2c |
Use the debugger to identify errors |
Lessons
|
CP1.2.1 |
Demonstrate the ability to use good programming style. |
Lessons
|
CP1.2.1a |
Demonstrate proper use of white space (between lines and indentation) |
Lessons
|
CP1.2.1b |
Use appropriate naming conventions for identifiers (variables, methods, functions, and file names) |
Lessons
|
CP1.2.1c |
Understand the appropriate use of constants versus variables in programming style |
Lessons
|
CP1.2.1d |
Construct identifiers with meaningful format; camelCase and underscore |
Lessons
|
CP1.2.1e |
Implement appropriate output formatting (decimal places, dollar signs, and correct placement of variable data in a sentence) |
Lessons
|
CP1.2.2 |
Understand the ordered software development life cycle. |
Lessons
|
CP1.2.2a |
Requirements Analysis: Identify specifications and understand requirements to create a solution to a problem |
Lessons
|
CP1.2.2b |
Planning/Design: Design an algorithm to solve the problem using appropriate documentation (UML diagrams and pseudocode). |
Lessons
|
CP1.2.2b.i |
Define an algorithm |
Lessons
|
CP1.2.2b.ii |
Break the problem down into its subcomponents using top-down design |
Lessons
|
CP1.2.2c |
Implementation: Write the code, with comments, to implement the algorithm |
Lessons
|
CP1.2.2d |
Testing: Test program for verification of errors and proper functionality |
Lessons
|
CP1.2.2e |
Release and Maintenance: Release the solution and provide updates when necessarv |
Lessons
|
CP1.3.1 |
Understand and implement input and output commands. |
Lessons
|
CP1.3.1a |
Understand the difference between input and output |
Lessons
|
CP1.3.1b |
Understand there are different types of input (file, keyboard, mouse, microphone) |
Lessons
|
CP1.3.1c |
Understand there are different types of output (speakers, monitor, printer, file) |
Lessons
|
CP1.3.1d |
Write a program that receives input from a keyboard and produces output to the display |
Lessons
|
CP1.3.2 |
Understand and implement data types and variables. |
Lessons
|
CP1.3.2a |
Differentiate between primitive data types (boolean, integer, float and string) |
Lessons
|
CP1.3.2b |
Identify proper use of primitive data types (when to use one versus another) |
Lessons
|
CP1.3.2c |
Declare a variable and assign it a value using the assignment operator |
Lessons
|
CP1.3.2d |
Understand the difference between declaring and initializing a variable |
Lessons
|
CP1.3.3 |
Understand and implement operators and operands. |
Lessons
|
CP1.3.3a |
Use basic arithmetic operators (modulus, multiplication, integer division, float division, addition, subtraction) |
Lessons
|
CP1.3.3b |
Use basic comparison operators (<, >, ==, ›=, <=) |
Lessons
|
CP1.3.3c |
Use basic assignment operator (=) |
Lessons
|
CP1.3.3d |
Understand order of operations for all operators (PEMDAS) |
Lessons
|
CP1.3.3e |
Use basic logical operators (AND, OR, NOT) |
Lessons
|
CP1.3.3f |
Use operands in conjunction with arithmetic, relational, and logical operators |
Lessons
|
CP1.3.4 |
Understand and implement expressions in a program. |
Lessons
|
CP1.3.4a |
Understand how operators and operands are used to form expressions |
Lessons
|
CP1.3.4b |
Identify and implement suntactically correct expressions (Possible examples: A OR B, 5==6, x I= 3.142, x = 4, V + 7) |
Lessons
|
CP1.3.5 |
Understand and implement functions. |
Lessons
|
CP1.3.5a |
Understand and properly define scope, local variable, and global variable |
Lessons
|
CP1.3.5b |
Understand what functions are and what are they used for (readability, reusability, modularity, abstraction) |
Lessons
|
CP1.3.5c |
Understand the difference between a built-in function and user defined function |
Lessons
|
CP1.3.5d |
Utilize built-in functions |
Lessons
|
CP1.3.5e |
Understand that functions may or mav not require arguments (input(s)) |
Lessons
|
CP1.3.5f |
Understand that functions mav or mav not return value(s) (output(s)) |
Lessons
|
CP1.3.6 |
Understand and implement complex data types. |
Lessons
|
CP1.3.6a |
Understand the difference between a simple and complex data types |
Lessons
|
CP1.3.6b |
Declare a string variable in a program |
Lessons
|
CP1.4.1a |
Understand when to use an IF statement and demonstrate correct use of an IF statement |
Lessons
|
CP1.4.1b |
Understand when to use an ELSE-IF statement and demonstrate correct use of an ELSE-IF statement |
Lessons
|
CP1.4.1c |
Understand when to use an ELSE statement and demonstrate correct use of an ELSE statement |
Lessons
|
CP1.4.1d |
Understand when to use a nested IF statement and demonstrate proper use of a nested IF statement |
Lessons
|
CP1.4.2a.i |
Understand when to use a for-loop and demonstrate proper use of a for-loop |
Lessons
|
CP1.4.2a.ii |
Understand the three components of a for-loop: An initial value (i = 0), A condition (i<7), An update expression (i=i+1) |
Lessons
|
CP1.4.2b |
Understand when to use a while-loop and demonstrate proper use of a while-loop |
Lessons
|
CP1.4.2c |
Understand when to use nested loops and demonstrate proper use nested loops |
Lessons
|
CP1.4.2d |
Identify the various ways that loops can end (break, met condition, condition fail) |
Lessons
|
CP1.4.2e |
Design loops so they iterate the correct number of times |
Lessons
|
CP1.4.2f |
Understand what causes an infinite loop |
Lessons
|
CP1.4.3 |
Understand and implement expressions and complex conditions in control structures. |
Lessons
|
CP1.4.3a |
Create expressions using relational operators -- Example: (a> 6, x!=7, y> 4) |
Lessons
|
CP1.4.3b |
Form complex conditions using logical operators -- Example: (a > 6 AND x != 7 OR y > 4) |
Lessons
|
CP1.4.3c |
Incorporate complex conditions in loop structures -- Example: While a player's health is greater than 50 and player is not dead |
Lessons
|
CP1.5.1 |
Investigate career opportunities, trends, and requirements related to computer programming/software engineering careers. |
Lessons
|
CP1.5.1a |
Identify the members of a computer programming/software engineering team:, team leader, analyst, senior developer, junior developer, client/subiect matter expert |
Lessons
|
CP1.5.1b |
Describe work performed by each member of the computer programming/software engineering team |
Lessons
|
CP1.5.1c |
Investigate trends and traits associated with computer programming/software engineering careers (creativity, technical, leadership, collaborative, problem solving, design, etc.) |
Lessons
|
CP1.5.1d |
Discuss related career pathways |
Lessons
|
CP1.5.2 |
Understand current ethical issues dealing with computer programming and information in society. |
Lessons
|
CP1.5.2a |
Explain the impact software can have on society (i.e., privacy, piracy, copyright laws, ease of use, etc.) |
Lessons
|
CP1.5.2b |
Explain the ethical reasons for creating reliable and robust software |
Lessons
|
CP1.5.2c |
Describe how computer-controlled automation affects a workplace and society |
Lessons
|