Giter Site home page Giter Site logo

itc230's Introduction

ITC 230 - Advanced Javascript

Class Details

Summary

JavaScript is now widely used for full-stack web development, with Node.js allowing use of the same language for client & server applications. Front-end frameworks like React, Angular, and D3 are enabling new and exciting applications in the browser.

This course will cover modern JavaScript technologies, including server-side scripting, automated testing, single-page web applications with MVC structure, package management, and JSON data storage. By quarter's end, students have built a fully-functional client-server application they can showcase for job applications.

Requirements

Students should have experience with basic web development skills, via WEB 150 or comparable experience, including:

  • HTML and CSS
  • Core JavaScript language syntax
  • HTTP request/response methods
  • JQuery selectors & methods

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

  • A computer onto which they can install software,
  • A working internet connection
  • A syntax-highlighting editor like Brackets or Sublime Text,
  • A github.com account
  • A heroku.com account (free tier)

Note - ` AWS Cloud9 <https://aws.amazon.com/cloud9/>`_ provides free online development tools you can access from any computer via web browser.

This course will use Web Development with MongoDB and Node, 3rd Ed. as a textbook, and also supplementary online materials as needed.

Students can access this textbook free online through https://libguides.seattlecentral.edu/az.php?a=o. First-time users should follow these steps:

  • Select “O’Reilly for Education”
  • In the ‘Select institution’ drop-down menu, select “not listed”
  • Create new account using @seattlecolleges.edu email address.

Class Structure and Topics

Course instruction will be fully online with Zoom conference for scheduled class times.

Each week, we'll cover a new topic, building on the previous week's work. In general we will cover new material in Monday lectures and exercise what we learned in Wednesday lab. We will cover the following topics, although the order and precise list is subject to revision:

  • Node.js overview & installation, core modules, NPM
  • Express application structures - routes, views, and static files
  • Advanced JS concepts - ES6, higher-order functions, asynchronous operations
  • Unit testing
  • Templating with Handlebars
  • REST APIs & JSON
  • Data storage & retrieval with MongoDB
  • Single-page-application (SPA) design with React
  • Deploying to a public web server

Each Monday, 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 Monday. These assignments allow me to evaluate your progress and build on each other toward a completed final project.

As such, most of your grade will come from turning in assignments on time and showing that you tried to solve it using your own original work. Your homework should be completely your own: plagiarism and late submissions may incur a grade penalty.

Homework assignments should be submitted in Canvas as links to your github.com repository. You should use a single repository and branch throughout the course, with clear a 'commit' message for each assignment completion.

90% of your grade will come from homework and 10% from quizzes.

Reference

Reading (optional)

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

Development Tools

ADA Accessibility

Students with documented disabilities requesting class accommodations, requiring special arrangements in case of building evacuation, or have emergency medical information the instructor should know about are asked to contact the disability support services office (DSS) in Rm. 1112. Once the disability is verified with DSS you will be given a letter of accommodation that should be handed to your instructor

itc230's People

Contributors

brendenwest 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.