The Graphics Network

Course Outline - JavaScript and TypeScript

01285 713297 info@tgn.co.uk

The last few years have seen major improvements to the JavaScript as well as its adoption at the server-side with the arrival of node and Express and even for desktop applications using Electron. TypeScript is an enhancement to JavaScript which allows type-safe coding as well as supporting modern JavaScript features on older implementations. TypeScript is the standard language used with Angular.

JavaScript

How scripting works
Scripting and HTML. Scripting languages and the origins of JavaScript. Recent enhancements to JavaScript. The ECMAScript standards.
Language fundamentals
Blocks and functions. Variables and operators. Control flow.
Basic scripting
Forms, fields and field validation. Event handling. Writing to the document.
Objects and object models
How objects work. Predefined objects. Browser and document objects. The ubiquitous getElementById method. Cookies.
Bringing pages to life
How HTML and JavaScript fit together. Cascading Style Sheets and named styles. Absolute and relative positioning. Compatibility considerations. Changing styles and style rules dynamically. Graphical and dynamic pages.
Interacting with the server
AJAX - Asynchronous JavaScript and XML. The fetch method - the modern way. Promises, futures and 'then'. The XMLHttpRequest object. The onReadyStateChanged function. JSON - JavaScript Object Notation. Examples.
jQuery
What jQuery is. The jQuery function and its $ shorthand. Selecting and modifying elements. Event handling. Animations. Using jQuery for AJAX.
Additional features
Bootstrap for layout and mobile. Drawing using HTML5 Canvas. Web sockets. SVG.

TypeScript

Introduction
What TypeScript is and where it came from. Transpiling. Compatibility and options.
Typing
Type inference. Explicit typing. Type-strict functions. Type aliases. Union and literal types. Interfaces.
Classes and Object Orientation
Defining a class. Creating and using objects. Inheritance. Creating subclass objects.

Node

nodejs and npm
JavaScript at the server and desktop. Origins and arhitecture of node. Installing and using node. The Node Package Manager (npm). Interacting using the REPL. Communicating with the user. require, import and export.
Node at the server
Responding to requests. Returning HTML and data. Installing and using express. Static and dynamic files. Using node with nginx.
'Desktop' applications
Installing and using Electron. A basic single page application. Properties, interaction and the API.

Angular

Angular applications
Components and architecture. Modules and imports. Property and event binding. Single page applications. Models. Forms. Selection and highlighting.
Angular components
Adding new components. Real and mock data. Input and output properties. Interaction between components. Events and handlers. Reactive (RxJS), Subjects and Observers. Pipes. Styling.