spikes
Advanced CSS
How can we use advanced CSS features to create complex custom components?
Questions to consider
What are "combinator" selectors? Can you provide examples where they're useful?
What are pseudo-elements? Can you provide examples where they're useful?
How might you create custom-styled checkboxes using both of the above?
Useful resources
Advanced DOM
How can we use advanced DOM features to make rendering complex UIs easier.
Questions to consider
What is a NodeList?
How is it different from an array?
What's the different between "live" and "static" NodeLists?
What is the
<template>
element?How can we use this to render dynamic UI?
Useful resources
Checking our code
What are all the different ways to make sure our code is correct?
Questions to consider
What is Prettier? How might it help us write better code?
What is static analysis? How can a linter help us avoid bugs?
What are the pros and cons of unit, integration and end-to-end tests?
Useful resources
Testing methodologies
How do different testing methodologies try to improve the way we write tests?
Questions to consider
What is Test-Driven Development (TDD)? Can it help us write better code?
What is Behavior-Driven Development (BDD)? How do we translate user requirements into automated tests?
What is test coverage? Can this tell us about the quality of our tests?
Useful resources
These resources are helpful extra reading that may clarify or enhance concepts you're learning in the main curriculum.
Good testing practices so you can be confident your tests are working.
A comparison of creating DOM elements manually versus using the
<template>
element. Useful technique if you're dynamically rendering lots of stuff with JS.
Last updated