Skip to content
This repository has been archived by the owner on Feb 27, 2023. It is now read-only.

JS beyond the basics #94

Open
5 of 13 tasks
kabaros opened this issue Jul 6, 2017 · 5 comments
Open
5 of 13 tasks

JS beyond the basics #94

kabaros opened this issue Jul 6, 2017 · 5 comments

Comments

@kabaros
Copy link
Contributor

kabaros commented Jul 6, 2017

We've covered so far (in 5 lessons + pair programming day)

  • the basics of JS (data types, conditionals, loops, objects, arrays)
  • Basics of unit testing and TDD
  • DOM and AJAX
  • Functions and good design principles
  • OO programming (concept and constructor functions)

What other topics we should cover for the rest of JS-Core (2 or 3 more classes) - these are some of the other topics that can be covered based on HackYourFuture and London's first class:

  • inheritance (covered next class)
  • Callbacks (will be touched on in the next class)
  • Closures
  • Scopes
  • Value vs Reference
  • Modules
  • More Functions (being first-class citizens, passing them around, Higher Order Functions)
  • ES6
  • String and Array manipulation (did we do enough?)
  • Chrome Dev Tools

These can go into Node modules

  • Promises
  • HTTP, APIs and JSON (high level)
  • Async vs Sync
    (the last two points were already covered but we can go into more details)

Any other topics we should cover?

This is just a catchall list - some of these can be covered as we go on into the Node modules, some can be left for research. I just want to capture all the high level topics and concepts that we think are important to cover.

@kabaros
Copy link
Contributor Author

kabaros commented Jul 6, 2017

context (this)
value vs reference
regular expressions

@Michael-Antczak
Copy link
Contributor

Strict mode
Template literals
but I guess it can come under ES6

@rarmatei
Copy link
Collaborator

rarmatei commented Jul 6, 2017

Do we want to cover the Chrome dev tools a bit more? Get them used to setting breakpoints and using the network and performance tabs?

@kabaros
Copy link
Contributor Author

kabaros commented Jul 6, 2017

yes definitely Chrome Dev tools.
Template literals would be under ES6

@djgrant
Copy link
Collaborator

djgrant commented Jul 10, 2017

Progressive enhancement, although I think it should be an overarching methodology that we teach (like we do with TDD).

Some example that spring to mind:

  • HTML forms -> ajax
  • CSS galleries -> interactive slider
  • Links to section (using #ID) -> scroll to element etc.
  • CSS @supports directive
  • JavaScript detection in CSS
  • JavaScript polyfills
  • caniuse.com

As well as equipping students to write robust web apps, this is a good way to bind HTML and JavaScript knowledge together.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants