Giter VIP home page Giter VIP logo

itc298-s16's Introduction

ITC 298 - Advanced Javascript

Class Details

  • Location: BE 3151
  • Time: 6:00 - 8:15 pm, Tuesdays and Thursdays
  • Dates: April 4 - June 17, 2016
  • Instructor: Brenden West
  • Email: [email protected]
  • Credits: 5
Summary
Modern JavaScript has rapidly become a major force for full-stack web development, with NodeJS allowing development in the same language on the server & browser. Client-side frameworks like Angular and D3 are enabling new and exciting applications in the browser. This course will cover JavaScript technologies that power a modern full-stack development workflow, including server-side scripting, single-page web applications with MVC structure, package management, and JSON data storage. Students will finish the quarter having built a fully-functional prototype application they can reference for job applications or future JS-based projects.
Requirements
Students entering this class should understand the core concepts of JavaScript programming, either via WEB 150 or comparable experience. They should be comfortable with:
  • JavaScript variables and operators,
  • Array methods and loops,
  • JavaScript functions and objects,
  • JQuery selectors, methods and AJAX,

Students will perform extensive hands-on development throughout the course and will require;

  • A computer on which they can install software,
  • A working internet connection
  • A syntax-highlighting editor like Brackets or Sublime Text,
  • A Github account

Note - Students can use online services such as Cloud9 (https://c9.io/) to access free development tools from any computer,

This course will use "Web Development with Node & Express" as a textbook, and leverage supplementary online materials to account for the rapid evolution of full-stack web development technologies.

Class Structure and Topics
Each week, we'll cover a new topic, building on the previous week's work. In general we will cover new material in Tuesday lectures, and with directed lab on Thursdays to exercise what we learned. We will cover the following topics, although the order and precise list is subject to revision:
  • Introduction to Node.js - Overview & installation, NPM, modules
  • Node.js programming - Callbacks, events, asynchronous operations
  • Intro to Express and request / response objects
  • Express application structures - routes, views, and static files
  • Templating with Handlebars
  • REST APIs & JSON
  • Data storage with MongoDB
  • MVC design & single-page-applications with AngularJS

Every Thursday, you'll be given an assignment to test what you've picked up on that week's topic. Assignments are due by the start of class on the following Tuesday. The purpose of these assignments is to evaluate your progress and understanding, and to provide me with an opportunity to offer feedback. As such, most of your grade each week will come from turning the assignment in on time and showing that you tried to solve it using your own original work. Your homework should be completely your own: plagiarism will not be tolerated.

90% of your grade will come from homework and an in-class presentation, and 10% from class participation. Homework assignments will build toward a completed final project at the end of the quarter. For the in-class presentation, you will choose a piece of open-source JavaScript that you find interesting and share with the class. The presentation include a written summary of the source code with your comments.

Reference

Reading (optional)

Note - Seattle Public Library card-holders have free access to the following technical reference:

Development Tools

itc298-s16's People

Contributors

brendenwest avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.