TypeScript Fundamentals

TypeScript Fundamentals walks you through the key concepts and features that you need to know to get started with TypeScript, and use it to build large (and small) scale JavaScript applications. Updated March 25, 2016 for TypeScript 1.8.
Course info
Rating
(1769)
Level
Beginner
Updated
Mar 25, 2016
Duration
4h 25m
Table of contents
Getting Started with TypeScript
Typing, Variables, and Functions
Classes and Interfaces
Modules
Description
Course info
Rating
(1769)
Level
Beginner
Updated
Mar 25, 2016
Duration
4h 25m
Description

This course has been updated as of March 25, 2016 for TypeScript 1.8. TypeScript is an open source language that provides support for building enterprise scale JavaScript applications. Although several patterns exist that can be used to structure JavaScript, TypeScript provides container functionality that object-oriented developers are familiar with, such as classes and modules. It also supports strongly-typed code to ensure inappropriate values aren't assigned to variables in an application. This course will walk you through the key concepts and features that you need to know to get started with TypeScript, and use it to build enterprise scale JavaScript applications. You'll learn the role that TypeScript plays as well as key features that will help jump-start the learning process.

About the author
About the author

Dan Wahlin founded Wahlin Consulting, which provides consulting and training services on JavaScript, Angular, Node.js, C#, ASP.NET MVC, Web API, and Docker. He is a Google GDE, Microsoft MVP and Regional Director, and speaks at conferences and user groups around the world.

More from the author
More courses by Dan Wahlin
About the author

John Papa is a Principal Developer Advocate with Microsoft and an alumnus of the Google Developer Expert, Microsoft Regional Director, and MVP programs.

More from the author
Play by Play: Extending the Browser
Beginner
38m
30 Apr 2018
More courses by John Papa
Section Introduction Transcripts
Section Introduction Transcripts

Getting Started with TypeScript
Welcome to the TypeScript Fundamentals course. In this course, we're going to walk you through the key concepts and features that you need to know to get started with TypeScript, and use it to build large and small scale JavaScript applications. My name's Dan Wahlin, and you can reach me on Twitter @danwahlin, or at my blog, which is located at weblogs. asp. net/dwahlin. And my name's John Papa, and you can catch me on Twitter @john_papa, or you can catch my blog at johnpapa. net. In the first module, we're going to introduce the overall concept of TypeScript and what it brings to the table. What does it offer you as a JavaScript developer? We'll cover some of the key features, as well as some of the different tools you can use to build TypeScript and actually convert it into JavaScript code. In module two, we're going to dive into looking at the differences between dynamically and statically-typed languages, and take a look at how we can use different types, like Booleans and strings and numbers to define things like functions and objects of all sorts of variables. Once we cover some of the different variables in the type system within the TypeScript language, we'll also then talk about classes and how we can actually organize our members and make them all play together and play together nicely. We'll then talk about interfaces and introduce the concept of what an interface is, and how we can use it to drive consistency in our code. And to build on the concept of separation or organizing your code, in module four, we'll talk about what modules are in TypeScript, and how they emit different kinds of modules in JavaScript, what the difference is between an internal and an external module, how you can import and export modules, and then also how you can use these with dependency resolution and features like AMD, asynchronous module definition. By the end of the course, you'll have a solid understanding of TypeScript. So let's go ahead and jump in.

Typing, Variables, and Functions
In this module, I'm going to cover all the core features of TypeScript so you can get coding right away. It'll be a jumpstart into things like the grammar and the syntax and how to deal with declarations and annotated types, so we can deal with and understand what static typing is in TypeScript and why and when you need it. We'll cover things like the different primitive types that are available in TypeScript, go over some of the new types like any, and handle -- how we do with things like functions and object literals and arrays, things that JavaScript already has and how do they translate over the TypeScript so we can use those in defining all of our objects and functions as we go along. So by the end of this module, you'll understand all the core features you need to know to get coding with TypeScript right away, and some tips and tricks with the tooling. ( Silence )

Classes and Interfaces
In this module, we'll take a look at how classes and interfaces fit in to the overall TypeScript language. I'll start off by defining what classes are and how they can be defined within your TypeScript code, and then we'll look at different members that you can add inside of classes. From there, we're going to look at interfaces, define what they are, and explain how they can be used to provide consistency in our code and how they can be integrated into classes. So let's go ahead and get started by talking about what classes are and how they can be defined within TypeScript applications.

Modules
Modules are an important part of building an application with TypeScript, especially as the application grows 'cause they help you keep you organized. In this module we'll talk about what modules are in relation to TypeScript and JavaScript and we'll go through the different kinds of modules that you can create, internal, external, you can import and export them. And I'll show you how you can manage dependencies using modules and TypeScript. So by the end of this module, you know how to identify a module and TypeScript, the different kinds that you can use, when and where you should use them, places may be perhaps you shouldn't use them, and then the various ways that you can actually implement the modules and code. So we'll take a look at several examples along the way, so let's dive in. ( Pause )