Typescript Resources for the uninitiated
09 April 19
TL;DR: below are a bunch of resources that are great for learning Typescript and understanding the point of it split into basic, intermediate and advanced topics. At the end of the list of resources there’s some tips on learning Typescript based on my experience.
TS = Typescript JS = Javascript
The Basics
The following resources cover the absolute essentials and give you the most important things.
- Typescript Basics on Fireship.io’s YouTube Channel by Jeff Delaney. Fireship is worth a look for many other videos about Typescript, RxJS and Angular - Jeff’s videos are always concise, practical and really clearly explained.
- Tutorials Point has an ok explainer on variables
- Object-Oriented vs Functional Typescript, again from Fireship, will cover a lot of concepts you need to start to understand why Typescript is a great tool whether you’re into OO or functional programming.
Intermediate Topics
- Typescript Inheritance Deep Dive on Hackernoon is a ground up explanation about inheritance in TS and how its syntactic sugar compiles into vanilla JS.
- Advanced Typescript Types with Examples has some context around “Advanced” stuff, but things like the Record type should be easy to understand and utilise
Advanced Topics
- Generics in Basarat’s Typescript Deep Dive (this book is great across a range of TS topics.)
- Typescript Decorators
- Introduction to Type Declaration Files write your own type definition files.
Stuff to Consider Early on with Typescript
You should already know about variables, functions, scope and closures in Javascript, why? If you don’t use and understand these concepts in Javascript, it will be hard for you to understand why Typescript is useful: learn about these things before you go near Typescript.
Understand why Typescript is a useful tool. TS gives you interfaces which allow you to plan and enforce a structure on the objects in your application. Interfaces are the basic building block of this because they enforce properties and types on objects - if you’re not interested in writing interfaces to represent the objects in your application, you won’t get the best out of Typescript.
At first learn Typescript independent of a framework and focus on writing your own interfaces and classes, why? There are plenty of front-end Javascript frameworks that you can use with Typescript now, like Angular and React, but using Typescript with a framework will probably mean that you don’t do as much writing of your own interfaces or structuring of your application and classes. If you want an achievable activity to break into writing interfaces: model interfaces in Typescript on collections and items you get from a database or API.
-N.