Overview

JavaScript is a powerful language that is ubiquitous in the Web. However, its dynamic and interpreted nature can lead to problems at scale, problems that are mitigated on the server side via compilation and static typing. TypeScript brings these benefits to the JavaScript universe.

TypeScript is a type safe superset of JavaScript that allows us to write clean, simple code that runs anywhere JavaScript does. You can interact with JavaScript libraries and JavaScript code can interact with TypeScript code. Type safety brings many benefits, including catching bugs at compile time instead of run time, advanced static analysis tooling, powerful refactorings etc…

Outline

Setting up the Build Environment

  • What is Transpilation
  • Introduction to Babel and Webpack
  • How to transpile TS to JavaScript
  • Support for TS in the WebStorm IDE
  • Debugging TS code at different levels
  • Configuring TypeScript via tsconfig.json and typings.json
  • Guidelines for setting up your coding environment

Introducing TypeScript

  • Why do we need TypeScript?
  • The basic types supported by TS
  • The power of type inference
  • TS as a superset of ECMAScript 6
  • The ECMAScript 6 class model in depth
  • Enforcing contracts via interfaces
  • Enhancements to function declarations
  • Support for generic types and constraints

Advanced TypeScript

  • Interacting with the TS Transpiler
  • Advanced features of TS interfaces
  • Type guards
  • Using class Decorators
  • Understanding Symbols

Requirements

Delegates must be proficient JavaScript developers.