gmac / professional-javascript

Curriculum for Professional JavaScript classroom workshop.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Professional JavaScript

This workshop introduces professional-level JavaScript development. The curriculum covers foundation concepts of JavaScript programming and basic computer science. The goal of this workshop is to establish a technical knowledge base for our participants to continue building upon in their careers. While this is a beginner-level course, the curriculum is expansive and highly technical. Participants of all experience levels should come prepared to be challenged.

Pre-requisites

You should be familiar with basic HTML and CSS. A pre-course primer on JavaScript will also help you succeed. You can pursue free lessons on these subjects at dash.generalassemb.ly.

Takeaways

  • Foundation concepts of computer science.
  • Intermediate-level concepts of the JavaScript programming language.
  • Foundation knowledge of how JavaScript makes the web interactive.

Day 1: Fundamentals

Our first session will cover the basics of computer science, using JavaScript as our language of study. For participants with past programming experience, this cirriculum will be generally familiar.

Morning

  • Introduction
  • JavaScript Fundamentals
    • Datatypes
    • Variables
    • Conditionals
    • Arrays & Objects
    • Enumeration
    • Passing Value vs. Reference

Afternoon

  • Simple Functions
  • Intro to DOM
    • Selecting elements
    • Reading and writing document data
    • Binding event handlers
  • Lab exercises

Day 2: Functions & Object-Orientation

Our second session will deep-dive into the exceptionally unique aspect of JavaScript: Functions. The concepts discussed here are significantly more advanced than those in session-1, so participants should come prepared to be challenged.

Morning

  • Introduction
  • Part 1: Basic Functions
    • Arguments & Return
    • The "arguments" Object
    • Invocation vs. Reference
    • Declaration vs. Assignment
    • Functions as First-Class Objects
  • Part 2: Closure & Scope
    • What is Closure?
    • What is Scope?
    • Declarations & Scope Chain
    • Hoisting
  • Scope exercises

Afternoon

  • Part 3: Contextual Invocation
    • What is "this"?
    • Function Invocation
    • Call Invocation
    • Method Invocation
  • Part 4: Prototypal Inheritance
    • Constructor Invocation
    • Prototype Chains
    • Using "hasOwnProperty"
    • Using "typeof" and "instanceof"
  • Invocation exercises

About

Curriculum for Professional JavaScript classroom workshop.


Languages

Language:HTML 59.5%Language:JavaScript 38.1%Language:CSS 2.4%