Call Us: +32 2 466 00 16
Email: info@u2u.be
Follow Us:

JavaScript Fundamentals

3days
Training code
UJSDEV

Upcoming sessions

29 Aug 2018
17 Oct 2018
05 Dec 2018
Book this course

JavaScript Introduction

JavaScript is THE programming language for the web, and it's becoming more and more important in other areas as well. In this module we'll take a first look at the language and how to make our lives easier by using it efficiently.

  • Why is JavaScript important?
  • What is ECMAScript?
  • Performance
  • Picking the right Libraries
  • Developer Tools

JavaScript Language Fundamentals

In this module, we'll talk about the very basics of JavaScript. JavaScript can be a very tricky language, so we'll try to explain a couple of its quirks as well. This way, we can avoid surprises later.

  • Using Variables
  • Primitives and Objects
  • Functions: more powerful than you'd expect
  • Understanding Scope
  • Strict Mode
  • Error Handling

JavaScript Collections

Collections are a big part of OO programming, they allow you to map one-to-many or many-to-many relationships, as well as let you work with sets of data. In this module, we'll take a look at the different types of collections in JavaScript, and their uses.

  • Storing multiple values in Arrays
  • Useful Functions
  • Using Objects as Maps
  • Sets, Maps and Others

JavaScript Constructors and Classes

A lot of developers are familiar with the concept classes in OO programming. We can use the class pattern to mimic this functionality in JavaScript. We also take a look at the native class syntax introduced in ECMAScript 2015

  • Creating your own Objects using Constructors
  • Prototypes
  • Class pattern and ECMAScript 2015 Class syntax
  • Using Properties to encapsulate your fields
  • The 'this' keyword explained

JavaScript Dealing with Async Code

Asynchronous code is really handy in JavaScript, since it allows us to keep the UI responsive while running a lot of code. In this module we'll see how to make our code run asynchronously.

  • Threading in JavaScript
  • Using Callbacks
  • Event Handling
  • Working with Promises
  • Async and Await

Structuring JavaScript Applications and Tooling

Hey new JavaScript developer! You are using WebPack right? WebPack? Yes, and Gulp and npm, you need those. Oow and definitly use Babel. It's soo good... If your face looks like a big question mark right now, that's quite normal. Setting up a JavaScript project can be quite the challenge. It's easy to get lost in the overwhelming amount of tools and best practices. In this module we'll create some clarity about these tools and teach you how to set up a modern JavaScript project.

  • Using Libraries
  • Content Delivery Networks
  • Getting Libraries with npm
  • Modules versus the Global Object
  • Using Task Runners like Gulp
  • Bundling and Minification Tools like WebPack
  • PolyFills and Traspilers like Babel and TypeScript
  • Tools for Code Quality

Browser Interaction with jQuery

JavaScript can be used in all sorts of projects, but when used in a browser it's best accompanied by a DOM library. jQuery is a great first library to learn how to interact with the DOM and makes many common tasks trivial. popular parts include selectors, event handling, making ajax call, animations, ...

  • The jQuery Ecosystem
  • Querying with CSS selectors
  • Generating HTML
  • Setting Attributes and Properties
  • Styling from Code
  • Dealing with Forms
  • Event handling with jQuery
  • Comparing jQuery with other UI libraries

REST Services

This module is about communicating with the backend. REST allows client-server communication using HTTP.

  • REST
  • Verbs and URLs
  • XML and JSON format
  • Example with node.js and Express

Client-side Service Consumption

By using AJAX we can call server-side actions from our client-side code and process the results in a quick, user-friendly manner.

  • Getting data using AJAX
  • Fetch API
  • External Libraries

Web Storage

Storage for browsers has been a nightmare for long. We could use cookies to store things, but that would be sent back and forth all the time. Enter Web Storage, a couple of features that allow us to store a bit extra in each browser. We'll look at Local and Session storage and compare it to IndexedDB.

  • Storing key-value pairs
  • Tracking Changes
  • Local vs. Session Storage
  • Browser Database Storage

JavaScript is one of the most versatile languages and can be used to code applications for the browser, desktop, phone or tablet using native JavaScript coding, or through frameworks that are built on top of the core JavaScript language. This course is the primer you need for any of your JavaScript endeavours, whether you want to build web sites, web servers with node, mobile apps, office extensions, tools, machine learning,... The list goes on. JavaScript is everywhere and you need to know it.

Developers who want to build rich web applications with JavaScript. This course is independent of the server-side technology you are using, so feel free to attend whether you use PHP, ASP.NET, Python, Ruby on Rails... A basic understanding of programming - in whatever language - is advised.
Note: This is only about JavaScript, if you want to learn about CSS and HTML as well, you need this course: www.u2u.be/training/javascript-jquery-html-css-programming.

© 2018 U2U All rights reserved.