A blueprint for creating objects that defines a type and its behavior.
An instance of a class containing data and behavior.
A variable bound to an instance of a class that describes the object.
A special method in Python classes used to initialize object attributes.
A single, unique object created from a class.
Another term for the `__init__` method, which builds or initializes a new object.
A function that an object can perform
To provide a new version of a method that replaces the existing behavior
A variable defined in a Class, for which each object of the class has its own copy.
A variable shared by all instances of a class.
A characteristic or property of an object
A mechanism where a new class (subclass) inherits attributes and methods from an existing class (superclass)
The parent class from which another class inherits
The child class that inherits from another class
An instance method that allows the client to **get** the value of an instance variable on an object.
An instance method that allows the client to **set** the value of an instance variable on an object.
An attribute that is private to the class and can only be accessed by code inside the class
a namespace is the collection of variable names that exist at a certain point in your code.
The outermost scope where variables are accessible throughout the entire program
A scope containing variables and methods defined within a class
A scope containing instance variables specific to a particular object
The region of a program where a variable is accessible
A file containing Python code (functions, variables, classes) that can be imported and reused in other programs
A statement used to bring in code from a module so it can be used in the current program
The syntax used to access a method or attribute from an imported module like `math.sqrt()`
Defining a function means to teach the computer a new command and explain what it should do when receiving that command.
Calling a function actually gives the command, so the computer will run the code for that function.
Pieces of information you can give to functions when you define them. When the function is called the arguments are the data you pass into the function's parameters. Parameter is the variable in the declaration of the function. Argument is the actual value of this variable that gets passed to the function.
An if statement lets you ask a question to the program and only run code if the answer is true.
Control structure that lets us run either one section of code or another depending on a test.
Used to make logical associations between boolean values
A control flow tool used as a second condition check after an if statement. It is a contraction of else if.
A triangle where all angles and side lengths are equal.
A triangle that includes one 90 degree angle.
A triangle where all angles are less than 90 degrees.
A triangle where one angle is greater than 90 degrees.
Command that lets you tell Tracy to move forward. In between the parentheses you need to put a number to tell Tracy how far to move forward.
turns Tracy left at a specified angle
turns Tracy right at a specified angle
determines how quickly Tracy will move through commands
Indentation is the visual structure of how your code is laid out. It uses tabs to organize code into a hierarchy.
Command to change Tracy’s color.
In Python functions, the function body is the indented block of code that comes after the `def my_function():` line. The function body is what will be executed when the function is called.
A message in your code that explains what is going on.
Breaking down (decomposing) your code is splitting it into more functions.
Top down design is a method for breaking our program down into smaller parts.
Command that lets you tell Tracy to move backward. In between the parentheses you need to put a number to tell Tracy how far to move backward.
Command that tells tracy to turn right and in between parentheses, how many degrees to turn right.
Command that tells tracy to turn left and in between parentheses, how many degrees to turn left.
A function that prints a prompt and retrieves text from the user.
A function is like a command that you get to invent and name. It allows us to break our program into smaller parts, making the program easier to understand.
Identity theft, stealing money, stealing private information, controlling private computers.
An observation that the processing speed of computers is doubling every year. This is *exponential* growth. Computers are getting smaller and faster at an exponential rate.
The study of computational thinking, the thinking humans need to in order to describe a step by step process to a computer.
Documentation for all Karel Commands and Syntax.
A function is like a command that you get to invent and name. It allows us to break our program into smaller parts, making the program easier to understand.
In Python functions, the function body is the indented block of code that comes after the `def my_function():` line. The function body is what will be executed when the function is called.
`snake case` refers to the style of writing in which each space is replaced by an underscore `_` character and the first letter of each word is lowercase.
Assumptions we make about what must be true before the function is called.
Managing complexity by "abstracting away" information and detail, in order to focus on the relevant concepts.
The ability to use methods and programs that we do not fully understand, or are unable to write.
SuperKarel is like Karel but already knows how to turnRight() and turnAround()
APIs and libraries simplify complex programming tasks by providing sets of clearly defined methods of communication among various computing components.
Written instructions detailing the functions, methods, and variables available and how to use them.
A for loop lets us repeat code a **fixed number of times.**
Executes code only if condition is true
Lets us repeat code as long as something is true.
A control structure lets us change the flow of the code.
An algorithm is a set of steps or rules to follow to solve a particular problem.
Sequencing, or sequential execution, is step by step execution of instructions in the order they are given.
Repetition of instructions a specified number of times, or until a condition is met.
Using a condition to determine which part of an algorithm is executed.
Ultra Karel is the same as Super Karel, except Ultra Karel has the ability to paint the grid world!