Schedule Introduction


Training Schedule


(4544) Essential TypeScript 2.1 with Visual Studio Code

Code: 4544 v12/8/2018
Tuition (USD): $2995
Length: 5Days

Have a question? Contact Us

Contact Us for upcoming dates.
Skills Gained:
1. Compile TypeScript to JavaScript with support for intellisense and debugging 2. TypeScript syntax for variable declarations, non-nullable types, operators and flow control statements 3. Tips and tricks for using Visual Studio Code to build TypeScript applications 4. Configure Visual Studio Code for task automation with Gulp 5. Lint and compile TypeScript code with extensions for Visual Studio Code 6. Write unit tests in Jasmine for behavior and test driven development 7. Use Karma for Continuous Integration to run unit tests as part of a build process 8. TypeScript type system, union and intersection types, type guards and string literal types 9. Arrow functions, function overloading, optional, default and rest parameters 10. Asynchronous programming with promises, generators and async / await 11. Object-oriented programming with interfaces, classes, inheritance and class expressions 12. Algorithm reuse with generic interfaces, classes and functions with generic constraints 13. Namespaces and modules with support for various module loaders, including ECMAScript 2015 modules 14. Build RESTful services in TypeScript with Node.js and Express 15. Build Single Page Applications (SPA’s) in TypeScript using Angular 2
Who Should Attend?
Developers who want to build client or server JavaScript applications using TypeScript with Visual Studio Code for improved productivity with intellisense, debugging, and code refactoring.
  • Experience with JavaScript or an object-oriented programming language such as Java or C#
What You Will Learn:
  • Virtual Classroom Live Outline
  • 1. Introduction to TypeScript
  • a) History and Importance of JavaScript
  • b) JavaScript Strengths and Weaknesses
  • c) Limitations of JavaScript
  • d) Advantages of TypeScript
  • e) TypeScript Design Goals
  • f) Installing TypeScript
  • g) Getting Started
  • 2. TypeScript Language Basics
  • a) Declaring Variables
  • b) Basic Types
  • c) Type Annotations
  • d) Non-Nullable Types
  • e) Basic Data Structures
  • f) Operators
  • g) Flow Control Statements
  • 3. Using Visual Studio Code for TypeScript Development
  • a) Tooling Options
  • b) VS Code Features
  • c) Limitations
  • d) Project System
  • e) Navigation Basics
  • f) Productivity
  • g) JavaScript Intellisense
  • h) Configuring TypeScript Projects
  • i) Compiling TypeScript
  • j) Debugging
  • 4. Task Automation, Unit Testing, and Continuous Integration
  • a) Need for Task Automation
  • b) Task Runners
  • c) Introduction to Gulp
  • d) Using Gulp
  • e) Configuring Build Tasks
  • f) Debugging Gulp Tasks
  • g) Testing Approaches
  • h) Testing Frameworks
  • i) Writing Unit Tests with Jasmine
  • j) Running Tests in a Browser
  • k) Writing Tests in TypeScript
  • l) Test Runners
  • m) Continuous Integration
  • 5. TypeScript Type System
  • a) Type Compatibility
  • b) Type Inference
  • c) Access Modifiers
  • d) Union Types
  • e) Type Guards
  • f) Intersection Types
  • g) Type Assertions
  • h) Type Aliases
  • i) String Literal Types
  • j) Polymorphic “this” Types
  • 6. Functional Programming
  • a) Function Types
  • b) Anonymous Functions
  • c) Arrow Functions
  • d) General-Purpose Array Functions
  • e) Callback Guidelines
  • f) Optional and Default Parameters
  • g) Rest Parameters
  • h) Function Overloading
  • 7. Asynchronous Programming
  • a) Importance of Async
  • b) Callbacks
  • c) Callback Hell
  • d) Promises
  • e) Generators
  • f) Async and Await
  • 8. Object-Oriented Programming
  • a) Introduction to Object-Oriented Programming
  • b) SOLID Principles
  • c) Interfaces
  • d) Classes
  • e) Inheritance
  • f) Mixins
  • g) Abstract Classes
  • h) Class Expressions
  • 9. Generics and Decorators
  • a) Algorithm Reuse
  • b) Generic constructs
  • c) Type Parameters
  • d) Constraints
  • e) Generic Functions
  • f) Generic Interfaces and Classes
  • g) Aspect-Oriented Programming
  • h) Creating Decorators
  • i) Class, Property, Method and Parameter Decorators
  • j) Decorator Factories
  • k) Metadata Reflection API
  • 10. Namespaces and Modules
  • a) Name Collisions
  • b) Namespaces
  • c) Defining Namespaces
  • d) Limitations of HTML Script Tags
  • e) Module Loaders
  • f) ECMAScript 2015 Module Support
  • g) Module Organization
  • h) Exporting from Modules
  • i) Importing from Modules
  • j) Module Guidelines
  • 11. Practical TypeScript with Express and Angular
  • a) SPA Architecture
  • b) Introduction to REST
  • c) Express Framework
  • d) Routing Basics
  • e) MV* Architecture
  • f) SPA Frameworks
  • g) Angular 2 Concepts
  • h) Components, Templates, Metadata
  • i) Services and Dependency Injection
  • j) HTTP Requests
Course Info:
TypeScript is a superset of JavaScript that compiles to plain JavaScript that can run in any browser and on any platform. It supports the latest JavaScript features, including those from ECMAScript 2015, as well as proposed features from future JavaScript versions, such as decorators and async / await. But what makes TypeScript ideal for large web applications is the addition of optional type annotations, which gives developer tools to provide IntelliSense and syntax checking so that errors are caught at compile-time instead of at run-time.

In this course, you will be provided with in-depth coverage of TypeScript, including language syntax as well as object-oriented and asynchronous programming. You will learn how to organize your code using namespaces and modules. You will also learn to use Visual Studio Code, Microsoft’s lightweight cross-platform code editor, to build RESTful services in TypeScript with Node.js, as well as responsive client applications with Angular 2, which is itself written in TypeScript.

Note: You may use your own laptop with Windows, OS X, or Linux.

Follow-On Courses:

* Terms and conditions may apply. Learn more about our Microsoft training exclusives by contacting

Live Virtual:
Get engaging and impactful live, instructor-led training, regardless of your location.

Our Virtual Classroom Live online training format combines premium skills development technologies and our industry-leading instructors, content, exercises and peer collaboration to ensure that you get the highest quality professional development experience possible. Gain the skills and expertise that matter from the convenience of your home, work or wherever you have an Internet connection.

Engage with your instructor and fellow students via a learning platform and course material designed to ensure a stimulating and productive skills development experience.

Choose from sessions across a variety of time zones for training options that suit your schedule. Save time, money and effort without sacrificing learning quality by accessing our expert-led online training from the convenience of your home, office or anywhere with an Internet connection.

Attend from your PC, Mac or any iOS/Android tablet or smartphone. Connect with the class through your device audio or via toll-free phone number†, depending on available technologies and your interaction preferences.
Learn how TypeScript is a superset of JavaScript that compiles to plain JavaScript that can run in any browser and on any platform.