 # 3 Computer Science 3

(This is part of the Young Coder program)

Teachers

Allison Bruning

Subjects

Computer Science

Ages

8 - 18 years old

Sessions

Sessions 1: String Concatenation

LESSON OBJECTIVES:

Students will concatenate two strings with "string1" + "string2".
Students will concatenate strings and variables, like "string1" + variable1.
Students will use proper spacing around concatenated variables.

Sessions 2: Computer Arithmetic

LESSON OBJECTIVES:

Students will learn how to use the addition, subtraction, multiplication, division, and modulo operators: +, -, *, /, and %.
Students will perform arithmetic on "numeric literals" (like 2 + 2).
Students will perform arithmetic on variables (like x - 5).
Students will perform arithmetic on properties (like hero.pos.y + 10).

Sessions 3: Properties

LESSON OBJECTIVES:

Students will access a property using dot notation.
Students will save a property in a variable.
Students will understand the difference between a property and a function.

Sessions 4: Functions with Returns

LESSON OBJECTIVES:

Students will write functions that return answers.
Students will use return statements to exit functions.
Students will use the value that is returned by a function.

Sessions 5: Not Equals

LESSON OBJECTIVES:

Students will test whether two things are not the same.
Students will use != and == appropriately in code.
Students will read != as "not equals".

Sessions 6: Boolean Or

LESSON OBJECTIVES:

Students will define what a boolean value is.
Students will understand how to use the boolean or operator.
Students will execute if statements if one of two conditions are true.

Sessions 7: Boolean And

LESSON OBJECTIVES:

Students will understand how to use the boolean and operator.
Students will understand the difference between the and and or operator.
Students will execute if-statements if both of two things are true.

Sessions 8: Relative Movement

LESSON OBJECTIVES:

Students will use moveXY() to move relative to dynamic positions with coordinate arithmetic.
Students will internalize how positive and negative x and y coordinates relate to movement up, down, left, and right.
Students will combine relative movement with loops and conditionals to produce desired movement patterns.

Sessions 9: Time and Health

LESSON OBJECTIVES:

Students will write code based on elapsed time by using the hero.now() function.
Students will write code based on thresholds using hero.health.
Students will learn when to change overall strategies in code.

Sessions 10: Break and Continue

LESSON OBJECTIVES:

Students will end while loops with break statements.
Students will skip while loop iterations with continue statements.
Students will understand when break/continue are cleaner than nested if/else.

Sessions 11: Capstone Project - Multiplayer Arena

LESSON OBJECTIVES:

Students will use an iterative process to develop a program that solves a problem.
Students will test and debug a program.