Location:

Level: 
Beginner
9:00am - 4:00pm

Prerequisites

Students enrolled in this class are expected to have a working knowledge of one of the object-oriented programming languages like Java, C++, or C#. Each participant should bring his/her laptop with pre-installed software (we'll send an email with instructions to each person enrolled in this class).

Tutorial: JavaScript for Java, C# and C++ Developers

JavaScript became a de-facto standard language for development of the front-end of Web applications. This trend will continue with the adoption of the new version of the language based on the EcmaScript 6 specification, which you can and should start using today.

By the end of this full day tutorial you will learn how to program in JavaScript and will get familiar with the tooling that programmers use in the real world projects. This tutorial will consist of the three parts:

Part 1. JavaScript Building blocks

  • Functions, Objects, Prototypal Inheritance,Closures 
  • Using Chrome Developer Tools
  • JavaScript in the Web Browser, DOM, CSS
  • An overview of selected ECMAScript 6 features

Part 2. Designing Single-Page Web Applications

  • Web site prototyping. Designing a Product page of an online auction using JavaScript and CSS
  • Responsive Web Design principles. Redesigning the Product page so it'll look good on smart phones and tablets. Our Product page will look like this: http://bit.ly/1CFw0uF 
  • Single-Page Applications. AJAX. JSON
  • The Bootstrap framework. Responsive GUI components. Fluid grids. Yet another redesign of the Product page by using responsive Bootstrap components.

Part 3. Tooling of a JavaScript Developer

  • node.js - JS framework plus a runtime for all development tools listed below 
  • npm - node package manager used for installing and managing development tools 
  • bower - package manager for the application dependencies 
  • grunt - a build automation tool
  • Using transpilers to deploy your EcmaScript 6 code as EcmaScript 5 in today's Web browsers

Similar Talks

ClojureScript Committer, Cognitect
Software Engineer at Promptworks
Cross-Team UI Technical Lead at Netflix

Tracks

Wednesday Jun 10

Thursday Jun 11

Friday Jun 12