errors in a computer program
bugs
Finding and fixing problems in your code
Debugging
A description in our natural language that describes what is supposed to take place in our written code. This should be done before attempting to write out your program in code.
Pseudocode
Added to code to make our code easier for others to understand and for us when we come back to it, will not show when code is executed.
comments
"running" it. Processing the code and providing a result
executing a program
our everyday spoken language - informal
natural language
Step by step set of instructions to solve a problem
Algorithm
Provides the standards, syntax, statements, and instructions for writing computer software. Converts our natural language into machine language
programming language
A programming language that captures only the most primitive operations available to a machine. Anything that a computer can do can be represented with combinations of low level commands. Ex: Assembly Language
Low level programming language
A programming language with many commands and features designed to make common tasks easier to program. Examples: Python, Javascript, Java etc.
High-level programming language
What assumptions we make and what must be true
BEFORE the function is called
preconditions
the source code is processed line by line and runs every line in the program. If it encounters an error, it will stop running and report an error
Interpreters
converts the source code entirely (not line by line) to a binary file. If there is an error in the source code, it is flagged and the compilation process is stopped.
compilers
breaking down
decomposing
What should be true after the function is called
post conditions
binary code - what our computers "speak" - formal
machine language
This is the first code that will run when you execute your program
start function
function start()
decomposing a problem into smaller tasks and repeating this process until we are at the simplest level
top-down design
How a function is executed and code
Preserving info that is relevant in a given context and forgetting info that is irrelevant in that context:
abstraction
allows us to break down our program into smaller parts, making it easier to read, and keeps us from repeating code
Function
used for translating low-level languages to binary
Assemblers
Format for comments (single-line and multi-line)
//comment
/*comment*/
function name(){
code();
}
convert our source code to machine language
1.Interpreters
2.compilers
3.Hybrid of the two
4.Assemblers
translators