We may earn an affiliate commission when you visit our partners.
Course image
Maximilian Schwarzmüller

Learn what TypeScript is, why it really is a powerful addition to JavaScript, what its features are and how to use it. Learn why TypeScript is amazing, how it improves your JavaScript code and how it helps you avoid nasty bugs and errors.

Read more

Learn what TypeScript is, why it really is a powerful addition to JavaScript, what its features are and how to use it. Learn why TypeScript is amazing, how it improves your JavaScript code and how it helps you avoid nasty bugs and errors.

This course takes you from the very basics and its most important feature (types. ) to the point where you're able to use TypeScript in any of your projects. ReactJS projects included.

As TypeScript is developed by Microsoft and strongly advertised and used by Angular 2+ (Google) and other popular libraries, it's here to stay. Indeed, TypeScript is one of the most popular web development languages you can learn these days.

Gain an edge today and be amongst the first to really understand TypeScript.

Learn how you can use TypeScript to bring modern JS features like destructuring, arrow functions or classes to any environment and codebase - even if it does not support those features yet.   Understand which types you may use and how you can build your own types. Learn how to write better code with types and with the many features offered by TypeScript.

But, in this course, we'll not stop after the basics. You will also learn about more advanced features (like decorators) and also how to set up workflows with  TypeScript. This includes a TypeScript-only workflow as well as a webpack workflow.

You'll also learn that you're not limited to Angular or plain JavaScript/ TypeScript projects. Instead, a complete module covers how you may use TypeScript with ReactJS and improve your React code with TypeScript as well.

Practice what you learn.

Watching videos is a great way to learn. And to a lot of students, it's the best way. If you also want to practice the things you learn, this course offers you more than that though. Because this course comes with plenty of exercises (and solutions, of course) in addition to all the high-quality learning videos.

So much Content.

I'm not a fan of these courses which teach you the basics and then leave you alone. Instead, in this course you'll get insights into:

  • Types and how to use them

  • How the TypeScript compiler works (and how you may configure it)

  • ES6 features with TypeScript

  • Classes in TypeScript

  • Namespaces and modules

  • Interfaces

  • Generics

  • Decorators

  • How to integrate Third-Party JavaScript libraries into your TypeScript projects

  • How to set up a TypeScript project with webpack

  • Or how to set up a plain-TypeScript workflow

  • How to use TypeScript together with ReactJS

  • How to use TypeScript together with Node/ Express

  • Real projects and use-cases.

  • And so much more.

Enroll now

What's inside

Learning objectives

  • Use typescript and its features like types, es6 support, classes, modules, interfaces and much more in any of their projects
  • Understand what typescript really is about and how it works
  • Why typescript offers a real advantage over vanilla javascript
  • Learn typescript both in theory as well as applied to real use-cases and projects
  • Learn how to combine typescript with reactjs or nodejs / express

Syllabus

What is TypeScript and why does it matter? Let me introduce you to this course!

Welcome to the course! Let me guide you through what you can expect from the course!

Read more

What is TypeScript and why is it awesome? In this lecture, we'll take a closer look at the advantages and new features TypeScript adds to JavaScript.

Join Our Learning Community

Time to get started! Learn how to install TypeScript globally on your system and how to use it in your first little demo project.

Time to summarize the advantages we learned about over the last lecture - what's amazing about TypeScript?

What exactly is in the course? Here's a complete outline!

Your success matters to me - here's how you get the most out of this TypeScript course!

In order to be productive, we need a good coding setup. In this lecture, we'll set up VS Code to write TypeScript code efficiently.

Throughout this TypeScript course, we'll often start with a blank project - in this lecture, we'll create that blank starting project.

Let's explore the basics concept of TypeScript and see some of the most important types in action.
Module Introduction
Using Types
TypeScript Types vs JavaScript Types
Important: Type Casing
Working with Numbers, Strings & Booleans
Type Assignment & Type Inference
Understanding Types
Object Types
Nested Objects & Types
Arrays Types
Working with Tuples
Working with Enums
The "any" Type
Union Types
Literal Types
Type Aliases / Custom Types
Type Aliases & Object Types
Core Types & Concepts
Function Return Types & "void"
Functions as Types
Function Types & Callbacks
Functions & Types
The "unknown" Type
The "never" Type
Wrap Up
Useful Resources & Links
The TypeScript Compiler (and its Configuration)
Using "Watch Mode"
Compiling the Entire Project / Multiple Files
Including & Excluding Files
Setting a Compilation Target
Understanding TypeScript Core Libs
More Configuration & Compilation Options
Working with Source Maps
rootDir and outDir
Stop Emitting Files on Compilation Errors
Strict Compilation
Code Quality Options
Debugging with Visual Studio Code
TypeScript adds tons of new features but it also allows you to use modern JavaScript in older browsers.
"let" and "const"
Arrow Functions
Default Function Parameters
The Spread Operator (...)
Rest Parameters
Array & Object Destructuring
How Code Gets Compiled & Wrap Up
Objects are everywhere in JavaScript, hence you'll learn how to work with them (and with interfaces - a new concept).
What are Classes?
Creating a First Class
Compiling to JavaScript
Constructor Functions & The "this" Keyword
"private" and "public" Access Modifiers
Shorthand Initialization
"readonly" Properties
Class Basics
Inheritance
Overriding Properties & The "protected" Modifier
Getters & Setters
Static Methods & Properties
Abstract Classes
Singletons & Private Constructors
Classes - A Summary
Classes
A First Interface
Using Interfaces with Classes
Why Interfaces?
Readonly Interface Properties
Extending Interfaces
Interfaces as Function Types
Optional Parameters & Properties
Compiling Interfaces to JavaScript
Interfaces
With the basic types out of the way, it's time to explore advanced types and advanced TypeScript concepts
Intersection Types
More on Type Guards
Discriminated Unions
Type Casting
Index Properties
Function Overloads

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Suitable for learners of any experience level, including students, working professionals, or hobbyists
Teaches modern JavaScript features and industry best practices for JavaScript development
Develops essential skills for building and maintaining complex JavaScript applications
Offers a strong foundation in TypeScript principles and practices
Provides a comprehensive understanding of TypeScript types, including advanced types like decorators
Covers integration with popular JavaScript frameworks and libraries, such as ReactJS and Node.js / Express

Save this course

Save Understanding TypeScript to your list so you can find it easily later:
Save

Reviews summary

Valuable typescript course

According to students, this course is helpful and educational. They praise the course's instructor for being knowledgeable and engaging. In this course, you can expect to work on practical assignments and learn from useful suggestions.
Expect practical assignments and useful suggestions.
"I find he makes very useful suggestions and goes out of his way to provide different ways of using the skills he's teaching."
The instructor, Max, is very knowledgeable and engaging.
"As usual, I'm very pleased with the courses Max puts out."
"He's to the point, and he covers details one might be interested in."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Understanding TypeScript with these activities:
Compile Resources and Tools
Assemble a collection of resources, tools, and links related to TypeScript for quick reference and continued learning.
Show steps
  • Search for online tutorials, articles, and documentation on TypeScript.
  • Collect examples, code snippets, and best practices from various sources.
  • Organize the resources into categories for easy access.
Explore TypeScript Docs
Explore the official TypeScript documentation to obtain a solid comprehension of the basics.
Show steps
  • Refer to the TypeScript documentation and read through sections on basic concepts, data types, and control flow.
  • Complete the interactive tutorials available on the TypeScript website.
Create a TypeScript Calculator
Build a basic calculator using TypeScript to reinforce understanding of data types, operators, and flow control.
Show steps
  • Define variables for operands and operators.
  • Utilize TypeScript's built-in math functions for calculations.
  • Implement user input for numbers and operators.
  • Handle different calculation scenarios and display results.
Five other activities
Expand to see all activities and additional details
Show all eight activities
Explore TypeScript Cookbook
Review the TypeScript Cookbook to gain practical insights into solving common development tasks.
Show steps
  • Browse through the TypeScript Cookbook and identify relevant recipes.
  • Follow the provided code examples and explanations to understand how to tackle specific problems.
Develop a TypeScript Library
Construct a reusable TypeScript library with helper functions or reusable components to solidify understanding of TypeScript's modularity and code organization.
Show steps
  • Plan the purpose and functionality of the library.
  • Create TypeScript files for different modules or functions.
  • Write TypeScript code for the desired functionality.
  • Test the library thoroughly.
  • Document the library for easy usage and reference.
Participate in TypeScript Challenges
Engage in online coding challenges or competitions to test and enhance TypeScript skills in a competitive environment.
Show steps
  • Identify coding platforms that host TypeScript challenges.
  • Participate in challenges and attempt to solve problems using TypeScript.
  • Analyze solutions and learn from both successful and unsuccessful attempts.
Implement a TypeScript-based Web Application
Build a fully functional web application using TypeScript to reinforce understanding of TypeScript's capabilities and real-world application.
Show steps
  • Plan the architecture and functionality of the web application.
  • Create TypeScript components for different sections and features.
  • Integrate TypeScript with HTML and CSS for a complete user interface.
  • Handle user interactions and implement business logic.
Mentor Junior TypeScript Developers
Share knowledge and guide junior developers to enhance their TypeScript skills and understanding.
Show steps
  • Identify opportunities to mentor junior developers.
  • Provide guidance on TypeScript concepts, best practices, and common pitfalls.
  • Review their code, offer suggestions, and support their learning journey.

Career center

Learners who complete Understanding TypeScript will develop knowledge and skills that may be useful to these careers:
Frontend Developer
TypeScript is a popular programming language that extends JavaScript and adds static typing. Frontend Developers who want to advance into a Javascript ecosystem should take this course in particular. This course helps build a foundation for more advanced concepts in TypeScript, including using Typescript with ReactJS. With the skills learned in this course, Frontend Developers can write better, more maintainable, and more complex code.
Software Engineer
Software Engineers should take this course in particular as it provides a comprehensive overview of TypeScript, a popular programming language that extends JavaScript and adds static typing. It starts from the very basics of TypeScript to the point where one can use TypeScript in any of their projects. TypeScript is used to build complex and reliable software applications. An understanding of the TypeScript language and its features will only broaden a Software Engineer's toolset.
Full-Stack Developer
Full Stack Developers can use TypeScript on both the front-end and back-end. This course introduces TypeScript's basic and advanced features, as well as how to set up workflows, including a TypeScript-only workflow and a webpack workflow. Full Stack Developers can use these skills to build web applications that are more maintainable, secure, and efficient.
Web Developer
Web Developers can use TypeScript to build more robust, maintainable, and scalable web applications. This course offers a comprehensive overview of TypeScript, starting from the very basics to advanced concepts and features. Web Developers will learn how to use TypeScript to write better code, improve their JavaScript skills and develop a deeper understanding of the language.
JavaScript Developer
JavaScript Developers can enhance their skills and advance in their careers by taking this course. TypeScript is a superset of JavaScript, and this course provides a deep dive into TypeScript's features and capabilities. JavaScript Developers will learn how to use TypeScript to write more maintainable, scalable, and efficient code, and how to integrate TypeScript with their existing JavaScript projects.
React Developer
React Developers should take this course to learn how to use TypeScript with ReactJS and improve their React code. TypeScript is a popular programming language that extends JavaScript and adds static typing. It can be used to build more robust, maintainable, and scalable React applications. This course will help React Developers to use TypeScript effectively and enhance their skills in React development.
Node.js Developer
Node.js Developers who want to advance in their careers should consider taking this course. TypeScript is a popular programming language that extends JavaScript and adds static typing. It can be used to build scalable, maintainable, and efficient Node.js applications. This course covers how to set up a TypeScript project with Node.js, and how to use TypeScript effectively in Node.js development.
Software Architect
This course may be useful for Software Architects who want to learn about TypeScript, a popular programming language that extends JavaScript and adds static typing. TypeScript can be used to build more robust, maintainable, and scalable software applications. With the skills learned in this course, Software Architects can make informed decisions about when and how to use TypeScript in their software development projects.
Technical Lead
Technical Leads can use TypeScript to build more reliable and efficient software applications. This course provides a comprehensive overview of TypeScript, starting from the very basics to advanced concepts and features. Technical Leads will learn how to use TypeScript to write better code and develop a deeper understanding of the language. They will also learn how to set up TypeScript projects and workflows, which will be essential for leading software development teams.
Project Manager
This course may be useful for Project Managers who want to learn about TypeScript, a popular programming language that extends JavaScript and adds static typing. TypeScript can be used to build more robust, maintainable, and scalable software applications. With the skills learned in this course, Project Managers will be able to better understand the technical aspects of software development projects and make informed decisions about when and how to use TypeScript.
Data Engineer
Data Engineers can use TypeScript to build data pipelines and other data-intensive applications. This course provides a comprehensive overview of TypeScript, starting from the very basics to advanced concepts and features. Data Engineers will learn how to use TypeScript to write better code and develop a deeper understanding of the language. They will also learn how to set up TypeScript projects and workflows, which will be essential for building and maintaining data-intensive applications.
DevOps Engineer
This course may be useful for DevOps Engineers who want to learn about TypeScript, a popular programming language that extends JavaScript and adds static typing. TypeScript can be used to build more robust, maintainable, and scalable software applications. With the skills learned in this course, DevOps Engineers will be able to better understand the technical aspects of software development projects and make informed decisions about when and how to use TypeScript.
Mobile Developer
TypeScript is a great language for building mobile applications. It is a superset of JavaScript, which means that it can be used to write code that runs on both the front-end and back-end of a mobile application. This course will teach you the basics of TypeScript, as well as how to use it to build mobile applications. By taking this course, you will learn how to use TypeScript to create more robust, maintainable, and efficient mobile applications.
Backend Developer
Backend Developers can use TypeScript to write more maintainable, scalable, and efficient code. This course provides a comprehensive overview of TypeScript, starting from the very basics to advanced concepts and features. Backend Developers will learn how to use TypeScript to write better code and develop a deeper understanding of the language. They will also learn how to set up TypeScript projects and workflows, which will be essential for building and maintaining backend systems.
Database Administrator
This course may be useful for Database Administrators who want to learn about TypeScript, a popular programming language that extends JavaScript and adds static typing. TypeScript can be used to write more robust, maintainable, and scalable software applications. With the skills learned in this course, Database Administrators will be able to better understand the technical aspects of software development projects and make informed decisions about when and how to use TypeScript.

Reading list

We've selected six books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Understanding TypeScript.
Series provides a deep dive into the fundamentals of JavaScript, covering topics such as types, values, operators, and functions. It valuable resource for those who want to master JavaScript and its underlying concepts.
Focuses on practical techniques for writing effective TypeScript code. It covers topics such as type annotations, interfaces, generics, and best practices for structuring TypeScript applications.
Provides a comprehensive guide to building Angular applications with TypeScript. It covers the basics of Angular and TypeScript, as well as advanced topics such as dependency injection, routing, and testing.
Provides a comprehensive introduction to JavaScript, covering the basics of the language as well as advanced topics such as closures, prototypes, and functional programming. It good resource for those who are new to JavaScript or want to improve their understanding of the language.
Provides a practical guide to building frontend applications with TypeScript. It covers the basics of TypeScript and frontend development, as well as advanced topics such as state management, routing, and testing.
Provides a concise overview of the good parts of JavaScript, including its strengths and weaknesses. It valuable resource for those who want to improve their understanding of JavaScript and its best practices.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Understanding TypeScript.
TypeScript 4: Getting Started
Most relevant
Typescript: The Complete Developer's Guide
Most relevant
TypeScript 4 In-Depth
Most relevant
TypeScript 5 Fundamentals
Most relevant
Configuring and Compiling TypeScript 5 Projects
Most relevant
Build a simple company expense tracker with Typescript
Most relevant
TypeScript 5 Crash Course for JavaScript Developers
Most relevant
Web Components & Stencil.js - Build Custom HTML Elements
Most relevant
TypeScript Fundamentals
Most relevant
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser