0345 4506120

JavaScript Essentials for the Full Stack Developer Using ECMAScript

Gain knowledge and skills to create modern, interactive websites. In this training course, you learn how to structure code, add interactivity, and leverage ECMAScript to generate dynamic HTML5. You will benefit from the use of best practices, progressive enhancement, and progressive web app development to optimize accessibility across multiple devices. You will grow significantly on your path to achieve the knowledge and skills of a full stack developer.

Learning Objectives

You Will Learn How To

  • Explore tiered architecture to gain insight into the application stack
  • Write and debug client-side ECMAScript to create modern pages for a variety of devices
  • Implement dynamic HTML effects to improve interactivity
  • Create dynamic, interactive formas with enhaned validation
  • Gain user responsiveness with asynchronous code
  • Execute REST server-side calls
  • Build progressive web apps with caching 

Pre-Requisites

Requirements

  • Experience developing web pages with HTML and CSS at the level of:
    • Course, Developing a Website

Other Important Course Information

  • The majority of the course focuses on the core JavaScript functionality and syntax which is common to most modern JavaScript versions
  • The course does cover some topics and features from ECMAScript (ES6)

Course Content

Course Outline

Introduction and Overview

  • Tiered architecture to understand full stack development
  • Quick HTML 5 and CSS review

Writing and Debugging ECMAScript

Core JavaScript syntax

  • Tools to find and fix errors

Implementation

  • Controlling client-side browser objects
  • Adding the behavior unobtrusively

Structuring Code for Reuse

Defining Functions

  • Declaration/Expression
  • Anonymous
  • Arrow functions
  • Function scopes
  • Immediately Invoked Function Expressions (IIFE)
  • Passing optional parameters

Working with objects

  • Structuring code with Object Literal Notation (OLN) 
  • Augmenting functionality with prototypes
  • Serializing objects with JavaScript Object Notation (JSON)
  • Creating objects with the class structure 
  • Object properties, setters, and getters

    Adding Interactivity with Dynamic HTML

    Manipulating the Document Object Model (DOM)

    • Creating, reading, updating and deleting web page markup 
    • Targeting elements by ID, tag name and class name
    • Modifying presentational CSS for dynamic HTML effects

    Handling events

    • Adding and removing event handlers unobtrusively
    • Inspecting event object properties
    • Preventing default browser actions
    • Minimizing handlers with event delegation

    Interacting with the browser and user

    • Responding to users' actions
    • Gathering information
    • Managing errors

    Validating data on the client side

    • Form vs. field validation
    • Matching data patterns with regular expressoins
    • Preventing forms from submitting with enhanced validation
    • Customizing validation error messages 

    Asynchronous Processing

    Creating better responsiveness 

    • Callbacks
    • Promises 
    • Observables
    • Performing REST calls with Ajax functionality

      Progressive Web App Development

      Building Web Apps for a Modern World 

      • Principals of a progressive web app
      • Creating service workers
      • Leveraging the application cache

        Where To Go From Here

        Next Steps to Full Stack Development

        • Benefits of client-side frameworks
        • Road to the server-side

        Privacy Notice

        In order to provide you with the service requested we will need to retain and use your contact information in accordance with our Privacy Notice. If you choose to provide us with this information you explicitly consent to us using the information as necessary to provide the request service to you. If you do not agree please do not proceed to request the service from us.

        Marketing Permissions

        Would you like to receive our newsletter and other information on products and services which we think will be of interest to you by email. We will always treat your information with care and in accordance with our Privacy Notice. You are free to withdraw this permission at any time.

         

        Online Courses

        You may prefer an online course if you are looking for a flexible and cost-effective solution. Online courses allow you to study at your own pace, at a time that suits you.

        We have the following eLearning options available:

        Virtual Classroom

        Virtual classrooms provide all the benefits of attending a classroom course without the need to arrange travel and accomodation. Please note that virtual courses are attended in real-time, commencing on a specified date.

        Virtual Course Dates

        Our Customers Include