Skip to content

Make-School-Courses/FEW-1.2-JavaScript-Foundations

Repository files navigation

FEW 1.2 - Foundation JavaScript

Course Section Instructor Slack Channel Course Website Instructor 1-on-1
A @Jay #few-1_2 make.sc/few1.2 Virtual Office

Course Description

Build and expand your understanding of JS one of the most important languages in use today.

During this course you will build three games with the mindset of someone working on, maintaining, and updating a codebase that you are responsible for. Along the way, you will work with many core features of the JavaScript language.

The course will cover foundational JavaScript, debugging JavaScript and working with various JavaScript Libraries to build applications and games. Classes and Object Oriented Programming (OOP) are introduced with a closer look at how OOP is uniquely implemented in JavaScript.

Why you should take this course

JavaScript is one of the most important languages in use today. You work with it daily in everything you interact with from web sites to mobile applications, to embedded IoT devices. Applications built with JavaScript have the highest potential impact and the lowest barrier to entry. If you want to create an application and put in front of the widest array of users you'll probably want to build it with JavaScript.

Prerequisites:

WEB 1.0 or equivalent

Course Specifics

Course Delivery: online | 7 weeks | 14 sessions

Course Credits: 3 units | 37.5 Seat Hours | 75 Total Hours

Learning Outcomes

By the end of the course will be able to:

  1. Write fundamental JavaScript including variables, loops, conditionals, and classes with professional syntax
  2. Design & Implement web games with JS
  3. Write functions and differentiate function types; closures, callbacks, and handlers
  4. Modify the DOM with JavaScript
  5. Define scope and differentiate between function and block scope
  6. Use developer tools to debug projects

Schedule

Course Dates: Monday, May 31 – Wednesday, July 14, 2021 (7 weeks)

Class Times: Monday, Wednesday at 4:00pm–5:30pm (12 class sessions)

Class Date Topics
1 Tue, June 1 JavaScript Basics
2 Thu, June 3 JavaScript Professional Best Practice
3 Tue, June 8 JavaScript OOP
4 Thu, June 10 OOP and Classes
5 Tue, June 15 JS OOP Inheritence
6 Thu, June 17 Bundling JS
7 Tue, June 22 Single Page Applications
8 Thu, June 24 Component Architecture
9 Tue, June 29 Components and State
10 Thu, July 1 Forms and user input
11 Tue, July 6 Building and Publishing
12 Thu, July 8 Show Your Work
13 Tue, July 13 Lab and Review
14 Thu, July 15 Final Assessment: Test your Knowledge

Assignments

Assignments will be made available at the date listed and must be turned in one week after becoming available (with exception to the final project which must be turned in by the last day of class).

Assignments must be turned in via Gradescope for credit!

Topic Date Made Available Assignment
1 Tue, June 1 Break Out: Tutorial
2 Thu, June 3 Break Out: EsLint
3 Tue, June 8 Break Out: OOP
4 Thu, June 10 Break Out: OOP Inheritance
5 Thu, June 17 Break out: Bundling JavaScript
6 Tue, June 22 React: Fundamentals Tutorial
7 Thu, June 24 Final Project: Getting started

Class Recordings

All class recordings will be available here no later than 24 hours after the class session. For privacy reasons, please do not share the recordings outside of the Make School student body.

Projects

  • Project 1 - Break Out - Assignments 1-5
  • Project 2 - Single Page Application Tutorial - Assignment 6
  • Project 3 - Final Project - Assignment 7

Evaluation

To pass this course you must meet the following requirements:

  • Achieve a passing score according to the rubric on each of the three projects.

Information Resources

Any additional resources you may need (online books, etc.) can be found here. You can also find additional resources through the library linked below:

Make School Course Policies