Introduction to TypeScript Development
4.2 (183 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
2,645 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Introduction to TypeScript Development to your Wishlist.

Add to Wishlist

Introduction to TypeScript Development

Get ready to build Angular 2 web and mobile applications by learning the TypeScript programming language.
4.2 (183 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
2,645 students enrolled
Created by Jordan Hudgens
Last updated 11/2016
English
Current price: $12 Original price: $40 Discount: 70% off
4 days left at this price!
30-Day Money-Back Guarantee
Includes:
  • 6 hours on-demand video
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion

Training 5 or more people?

Get your team access to Udemy's top 2,000 courses anytime, anywhere.

Try Udemy for Business
What Will I Learn?
  • Be ready to move onto building Angular 2 applications.
  • Code with the TypeScript programming language.
  • Work with TypeScript classes and object oriented programming concepts.
View Curriculum
Requirements
  • Basic computer knowledge
  • Mac, Linux or PC
Description

Do you want to build Angular 2 web and mobile applications? If that's your goal it's vital that you learn the TypeScript programming language, and that's exactly what we're going to walk through in this course. My name is Jordan Hudgens, and I'll be your instructor for the course. In addition to being the lead instructor for devCamp I've also been building web applications for over a decade for organizations such as Eventbrite and Quip.

After you have completed this course you'll be ready to start learning how to work with the Angular 2 application framework. Angular 2 was rebuilt from the ground up in order to take advantage of modern development practices, and the framework creators actually built the new version completely in the TypeScript programming language. This is the reason why TypeScript is so important to learn for aspiring Angular developers.

In this course we're going to start with the basics and I'm going to show you how fun it is to build TypeScript programs. After you're familiar with the syntax, we're going to move onto more advanced TypeScript development techniques, such as: working with closures, object oriented programming, real time asynchronous development, and decorators.

My focus for this course isn't to teach you how to build TypeScript console applications. Instead, my goal is to teach you the skills you will need in order to build real world Angular 2 applications. And actually, this course includes the exact material we teach at our devCamp coding bootcamps prior to students going through our immersive Angular 2 course.

There are no technical pre-requisites to this course. The ideal student is an individual who wants to learn how to build Angular 2 applications. I will show you how to install and run TypeScript programs on both a Mac and a PC. And you can use either operating system to follow along with the course material.

Each lesson of the course is paired with the source code that I used in the lecture so you can check your work.

Please feel free to review the course curriculum and I look forward to going through the material with you on your development journey!

Who is the target audience?
  • Students who want to learn the foundational concepts required for Angular 2 development
  • Students aspiring to learning the TypeScript programming language.
  • No programming experience is necessary for this course
Compare to Other Typescript Courses
Curriculum For This Course
42 Lectures
06:04:14
+
Introduction and System Configuration
8 Lectures 59:04

This guide provides an overview of the TypeScript programming language along with listing some of the key benefits associated with TypeScript.

Preview 07:05

This guide walks through how to install the Homebrew package manager if you plan on building TypeScript applications on the Mac operating system.

How to Install Homebrew for Using TypeScript on a Mac
03:37

This lesson gives a step by step walk through for installing Node.js and NPM on a Mac.

Installing Node.js and NPM on a Mac
04:35

This guide walks through how to install the TypeScript programming language on a Mac computer by leveraging NPM.

Installing TypeScript on a Mac
07:15

In this lesson we'll learn how to install the TypeScript plugin for the Sublime Text editor to provide helpful tools for building TypeScript programs.

Installing the Sublime Text TypeScript Plugin
09:20

This guide walks through the full set of steps for installing Node.js and NPM on a PC running the Windows 10 operating system.

How to Install Node.js and NPM on a PC
08:00

This guide explains how you can use NPM in order to install TypeScript onto a PC running Windows 10.

Installing TypeScript on a PC via NPM
10:10

This tutorial walks through how to configure your system to run TypeScript programs, including how to run programs entirely inside the Visual Studio Code text editor.

Preview 09:02
+
Basic Syntax and Structure
14 Lectures 01:52:45

In this guide we'll walk through how to build a Hello World application in TypeScript on a Mac, including how to integrate a tsconfig file for running TypeScript code.

Building a Hello World Program in TypeScript on a Mac
07:04

This guide walks through how to use variables in TypeScript, specifically we examine how to work with the: var, let, and const variable types and how they each have a specific role in development.

How to Use Variables in TypeScript
12:02

This guide examines how to work with string interpolation using back ticks in TypeScript.

String Interpolation in TypeScript
04:14

In this guide we will walk through the key types that are used in TypeScript programs.

Overview of Types in TypeScript
13:00

This guide walks through how to create a type alias in a TypeScript program.

Creating a Type Alias in TypeScript
05:09

In this guide you'll learn how to implement Union Types in TypeScript, which allow for variables and aliases to have multiple data types assigned to them.

How to Use Union Types in TypeScript
05:16

This guide examines how to use arithmetic operators in the TypeScript programming language.

TypeScript Arithmetic Operators
08:45

In this guide we'll walk through how to use conditionals in the TypeScript programming language.

Guide to TypeScript Conditionals
05:51

This guide examines the full list of TypeScript conditional operators that allow for managing data flow in programs.

TypeScript Conditional Operators
08:54

In this guide you'll learn how to use compound conditionals in TypeScript programs, including how to work with the: and, or and not programming mechanisms.

Compound Conditionals in TypeScript
07:54

This guide explains how to work with loops in TypeScript, including: while loops, for in, and for of.

TypeScript Loops
07:25

This guide provides an introduction to functions and specifically the syntax for how to create functions in the TypeScript programming language.

Introduction to TypeScript Functions
09:03

This guide analyzes how to work with function arguments in a TypeScript program. This includes a walk through of: optional, default, and rest arguments.

Working with TypeScript Function Arguments
13:28

Learn how to work with arrow functions in the TypeScript programming language.

Preview 04:40
+
TypeScript Closures
4 Lectures 41:35

This guide explains the key differences between TypeScript function declarations vs function expressions.

Function Declarations vs Expressions in TypeScript
10:00

This TypeScript tutorial walks through the concept and syntax for immediately invoked functions.

Preview 04:58

This guide explains how immediately invoked functions in TypeScript can work with arguments, along with a deeper dive into how to structure these types of functions.

Immediately Invoked Function Arguments
07:00

This guide examines how to work with TypeScript closures, including three examples of how closures work, specifically discussing the idea of variable scope.

Introduction to Closures in TypeScript
19:37
+
Object Oriented Programming in TypeScript
7 Lectures 01:06:52

This guide walks through how to create and instantiate a class in TypeScript, including how to work with the constructor function.

Introduction to TypeScript Classes
08:27

In this guide you'll learn how to implement object oriented inheritance in TypeScript programs, including the proper syntax along with a practical example.

Guide to Inheritance for TypeScript Programs
14:31

This guide walks through how to use objects in the TypScript programming language, including the syntax for creating a new object and how to call the object's values.

Objects in TypeScript
05:01

In this guide you will learn how to work with interfaces in the TypeScript programming language.

Preview 11:55

This guide examines how to create functions that follow an interface's set of rules.

How to Configure TypeScript Functions to Work with Interfaces
03:53

In this guide we're going to examine how to implement interfaces in classes, including two processes that allow for class implementation.

TypeScript Classes Implementing Interfaces
14:04

In this guide you'll learn how to work with namespaces in the TypeScript programming language.

TypeScript Namespaces
09:01
+
Asynchronous Development in TypeScript
5 Lectures 44:52

No matter your background, the concept of asynchronous behavior in applications can be a challenging topic. Seasoned programmers and new coding students alike can be intimidated by what it takes to work with asynchronous programs. In this guide I will walk through a dead simple explanation of asynchronous development. And by the end of the material hopefully the concept will be easier to understand.

Explanation of Asynchronous Development

Let's start off with a definition of what asynchronous development means.

What Does Asynchronous Mean?

If you Google asynchronous development you'll get a long list of convoluted explanations. So I'm going to give you the easiest definition I can think of:

Asynchronous development allows for you to run multiple processes at the same time.

That's pretty straightforward, right?

Essentially what takes place in a program that leverages asynchronous behavior is that they have code components that can run in the background.

Asynchronous Programs in the Real World

Let's examine a practical example of asynchronous behavior in a real world program. Imagine that you have a web app that does not utilize asynchronous processes. Now imagine that you need to render a page with a large database query. When a user accesses the page the header will load and then the screen will freeze while the database query is running. Once the query is complete the program will show the results and then it will render the other page components, such as the footer, sidebar, etc.

In an asynchronous application, if you have a large database query the entire page will load and the results from the database query won't hold up the rest of the page from loading. From that point, the query data will show up whenever the database query has completed.

Non Blocking Code

Implementing this type of functionality is typically accomplished through runtimes such as Node.js. Node is the traditional tool of choice because it utilizes what's called non blocking IO (where IO stands for input/output). And thankfully the term non blocking is pretty self descriptive. From a programming point of view it means that a process in one function doesn't have to block the processes in other functions.

Summary

And that is a dead simple explanation of asynchronous development along with a practical example of how it works in a real world scenario.

Preview 02:40

This guide walks through the issues with 'this' in TypeScript, along with examining how we can leverage arrow functions to fix scoping problems.

The Problem with 'this' in TypeScript (and how to fix it)
10:17

This guide walks through how to work with higher order functions and callbacks in TypeScript to build asynchronous applications.

Higher Order Functions and Callbacks in TypeScript
10:16

This guide walks through how to configure your system to work with TypeScript promises. Specifically we update the compiler options in the tsconfig file to work with the ES6 runtime.

Configuring TypeScript to Work with Promises
03:10

This guides examines how to work with Promises in TypeScript, including: what promises are, how to create a promise, and how to work with promises.

Guide to Promises in TypeScript
18:29
+
TypeScript Decorators
4 Lectures 39:06

In this guide you'll learn how to work with TypeScript decorators with a basic code example that examines the core functionality.

Introduction to TypeScript Decorators
16:05

This guide explains how to work with class decorators in TypeScript, including how to add custom behavior to classes.

Class Decorators in TypeScript
11:03

In this guide you'll learn how to work with method decorators in the TypeScript programming language, including how you can customize function behavior by adding new behavior.

TypeScript Method Decorators
07:36

This guide reviews an Angular 2 code file and examines how the Component decorator is utilized in Angular 2 development.

Example of TypeScript Decorators in Angular 2
04:22
About the Instructor
Jordan Hudgens
4.5 Average rating
3,015 Reviews
31,620 Students
19 Courses
CTO at devCamp

Jordan Hudgens is the CTO and Founder of DevCamp where he leads instruction and curriculum development for all of the DevCamp and Bottega code schools around the US.

As a developer for over the past decade, Jordan has traveled the world building applications and training individuals on a wide variety of topics, including: Ruby development, big data analysis, and software engineering.

Jordan focuses on project driven education, as opposed to theory based development. This style of teaching is conducive to learning how to build real world products that adhere to industry best practices.

Additionally Jordan has published multiple books on programming and computer science, along with developing training curriculum for Learn.co, devCamp, and AppDev on the topics of Ruby on Rails, Java, AngularJS, NoSQL, API development, and algorithms.