<< Week 3 | Main Page | Week 1 >>
All code is guilty until proven innocent.
Program testing can be a very effective way to show the presence of bugs, but is hopelessly inadequate for showing their absence.
- Learning Objectives
- Study Tips
- Module Projects
- Study Materials:
- Isolate - examples and exercises
- Integrate - projects to study
- Class Recordings
- Study Links (external)
- Curriculum (external)
- HYF Home (external)
- How to Study This
- Learning from Code
- Reading & understanding source code
- Making small, incremental experiments
- Copying & modifying others' code
- Using assertion libraries
- Failed assertions throw errors!
- Deep equality
- Strict equality
- Throws
- Using test reporters
describe
it
- TDD
- Trust the tests!
- Solving challenges one test at a time
- Debugging
- Reading test results to debug code behavior
- Interpreting assertion errors
- JS Operators
- Implicit Coercion
- Operator Precedence
- Control flow
for in
,for of
break
,continue
- Reference vs. Value
- Comparing arrays & objects
- Avoiding side-effects
- Arrays
- Reading & writing entries
- Array methods
- Objects
- Reading and writing entries
- Dot vs. Bracket access
Object.keys
,.values
,.entries
- Functions
- The callstack
- Recursion
- Sharing arrays and objects between handler functions by reference
- Don't rush, understand! Programming is hard.
- The examples and exercises will still be there to study later.
- It's better to fail tests slowly and learn from your mistakes than to pass tests quickly and not understand why.
- Practice Pair Programming: two people, one computer.
- Don't skip the examples! Understanding and experimenting with working code is a very effective way to learn programming.
- Take a look through the Learning From Code guide for more study tips
Projects in this module will be simple websites with onclick
attributes that call a handler function.
- User interactions will be handled with
prompt
,confirm
andalert
- Handler functions will use arrays and objects stored in script variables
- There will be tests
- Clone this repo
- Open the directory in terminal
npm run start
(no need to install)- Open
localhost:3000
in your browser - Learn
- Install markdown-viewer
- Add origin
hackyourfuture.be
- Learn