General Programming Concepts Review
- programs are just:
- data structures
- and algorithms to manipulate the data structures
- algorithms are built up from control stuctures
- control structures are just step-by-step instructions, telling the computer what to test for and what to do
- there are only three basic control structures, and everything else is just a fancy variation on one of:
- sequence: do this, then do that, then do the other
- selection: if this is true, then do that, else do the other
- iteration:
- leading test: while this is true, do that (it will run the test before it has entered the loop, so the condition may never become true and what is inside the loop may never happen)
- trailing test: do this, until that is true (it will run the test after it has gone through the loop, so what is inside the loop is guaranteed to happen at least once)
Making sense? Good. That was your high-level review of general programming concepts. Now, let's briefly review a couple of high-level problem-solving ideas we have talked about.
Problem-Solving and Paradigms Review
Divide and Conquer: talk about breaking up what may seem like one large and monolithic problem into many smaller, more easily understandable and solvable problems.
Remind them about separation of concerns, relate to D-and-C, and relate to MVC paradigm and the HTML-CSS-Javascript trio.
Refer to Wikipedia article.
- whitespace
- variables
- arithmetic
- objects
- data structures
- control structures (if/else, do/while, for/in)
- functions and functions as objects
- error handling
Refer to Javascript tutorials