Students will be able to…
Write their first Karel program by typing out all of the Karel commands with proper syntax.
Explain how giving commands to a computer is like giving commands to a dog.
Students will be able to…
* Identify the direction that Karel is facing
* Predict what direction Karel will be facing after executing a series of commands
* Identify a location in Karel’s world using Street, Avenue terminology
* Create Karel programs th
Students will be able to…
* Explain the purpose of the Run Method
* Explain the first thing that happens in your program when you click the Run button.
* Write a fully-formed Java program by including a class and a run method.
Students will be able to…
* Teach Karel a new command by creating a turnRight()
method
* Utilize the turnRight()
method they created to write cleaner, clearer Karel programs
* Explain the difference between defining and calling a method
Students will be able to…
* Create methods to teach Karel new commands
* Utilize these methods to write higher level Karel programs that go beyond the basic toolbox of commands that Karel starts with
Students will be able to…
* Break a large problem down into smaller, simpler problems
* Write methods that solve the simpler problems, and use them as building blocks to solve the larger problem
* Compare programs and identify good vs poor decomposition
Students will be able to…
* Explain the preconditions and postconditions of a method
* Create clear and readable comments in their code that help the reader understand the code
* Explain the purpose of comments
Students will be able to…
* Write programs that use SuperKarel instead of Karel
* Utilize the new toolbox of commands that SuperKarel provides over Karel
* Read documentation to understand how to use a library (SuperKarel is an example of this)
Students will be able to…
* Create for loops to repeat code a fixed number of times
* Explain when a for loop would be a useful tool
* Utilize for loops to write programs that would be difficult / impossible without loops
Students will be able to…
* Explain the purpose of a while loop
* Create while loops to repeat code while a condition is true
* Utilize while loops to solve new types of problems
* Test their solutions on different Karel worlds
Students will be able to…
* Use conditions to gather information about Karel’s world (is the front clear, is Karel facing north, etc)
* Create if statements to only execute code if a certain condition is true
Students will be able to…
* Explain the purpose of an If/Else statement
* Create If/Else statements to solve new types of problems
* Identify when an If/Else statement is appropriate to be used
Students will be able to…
* Identify the different control structures we can use to modify the flow of control through a program
* Combine control structures to solve complicated problems
* Choose the proper control structure for a given problem
Students will be able to…
* Analyze a solution to a problem and explain why it works
* Use control structures to create general solutions that work on all Karel worlds
Students will be able to…
* Explain why it is important to indent code
* Identify proper indentation
* Modify a program to have proper indentation
* Write programs with proper indentation
Students can create their own Java methods to solve simple problems.
Students can write general methods that take parameters as inputs.
Students can use parameters to generalize their methods to solve general problems.
Students can identify and fix improper parameter names in Java.
Students reflect on what they have learned in the course, celebrate the accomplishment of completing the course, and think about what their next steps are in their computer science education.