title |
---|
Revision checklist |
These questions are designed to give you an idea of what concepts you might need to revisit from the first few weeks of the course.
This isn't a test and you can't fail, so don't worry about getting some answers wrong. It's purely for your own benefit, so try to answer each question honestly without looking them up first!
- Why do we use Git?
- What's the difference between Git and GitHub?
- What happens when you
clone
a repository? - What happens when we do
git pull origin main
- How do we create a new branch on our local machine?
- How do we control which changes will be included in the next commit?
- When might
git add .
be inappropriate? - How do we make sure our local changes don't conflict with
main
? - What does
git push origin [branch-name]
do? - Why do we make pull requests instead of just changing
main
directly? - Why should you review your teammates' pull requests?
- Why is accessibility important?
- How can you quickly find simple accessibility problems?
- What is semantic HTML?
- Why is it important to use the "correct" semantic element?
- What is the
<form>
element used for?
- How would you use CSS variables to make a reusable colour palette?
- How would you use flexbox to make elements sit on a single line?
- How would you use grid to make a layout that automatically adds columns as the screen gets wider?
- Why is it important to create a responsive design?
- How would you structure your CSS to make it "mobile-first"?
- Why should we avoid using
var
to define variables? - How might you make a long, complex chunk of code easier to read?
- What is a "callback"?
- How would you use
array.map()
to create a new array with transformed values? - How would you use
array.filter()
to create a new array with certain values removed? - How would you use
array.find()
to get a single value from an array?
- What is a promise?
- How do promises help manage asynchronous code?
- What does a promise's
.then
method return? - How could you chain promises together to avoid "callback hell"?
- How would you handle a
fetch
request that failed to get a response from the server? - How would you handle a
fetch
request that received a404
response from the server?
- What is an HTTP request?
- What kind of request is sent when you click a link in your browser?
- What kind of request is sent when you submit a form in your browser?
- What is an HTTP response?
- What does the status code of an HTTP response tell us?
- What are some common status codes?
- What are HTTP methods for?
- What kind of request should have a
GET
method? - What kind of request should have a
POST
method? - What kind of request should have a
PUT
method? - What kind of request should have a
DELETE
method? - What is the "body" of an HTTP request for?
- What is the "body" of an HTTP response for?
- How would you get a reference to a DOM element in your JS?
- How would you get references to multiple DOM elements at once in your JS?
- How would you update properties of a DOM element?
- What's the difference between a "property" and an "attribute"?
- What are some different ways to add content inside a DOM element?
- When might the
<template>
element be useful? - What are the different ways to add event handlers to elements?
- Why is
addEventListener
the safest way to add an event handler? - How can you access submitted form values in your JS?
- Why are tests useful?
- What is the difference between unit and integration tests?
- What kind of code is easier to test?
- Why should your tests be isolated from each other?
- What is Test Driven Development (TDD)?
- When might TDD be a useful process to follow?
- What process would you take to find out why your code isn't working?
- What tools do JS/dev tools have to help debug your code?
- At what point should you ask for someone else's help?