Introduction to TypeScript

(πŸ‘©πŸΎβ€πŸ’» for JavaScript developers πŸ‘¨πŸΌβ€πŸ’»)

@JeremyLikness

Jeremy Likness

Cloud Developer Advocate for Microsoft
  • πŸ’Ύ 20+ Years Professional Developer
  • πŸ“ Author of books/articles, online and print
  • 🎀 Prolific speaker
  • πŸ₯‘ 100% plant-based diet and runner πŸƒπŸ»
  • 🌐 blog.jeremylikness.com

Cloud Developer Advocacy

Wat?!


						
...

Evolution

Harmony? ECMAScript 2015? Babel?

Popular options.

Includes: classes, lexical scope, lambda...

Lacks …

  • Interfaces
  • Dynamic module affinity (System.js, Require.js, etc.)
  • External library definitions
  • Generics

Real World

πŸ”Ž Discovery

Intent is clearer with types and interfaces.

Real World

πŸ“„ Documentation

Libraries make it easier to discover and learn how to use APIs.

Real World

πŸ₯‡ Version Safety

Use the latest language syntax even when targeting older browsers.

Real World

πŸ” Development Time Security

Less "fat-finger", catch bugs earlier in the cycle.

Real World

πŸš‘ Scope Safety

Modules, Classes, and Lambdas take care of this.

Real World

πŸ€ΌπŸ€Έβ€β›ΉοΈπŸŒοΈβ€ Team Scale

Easier for multiple teams and members to work in parallel.

Real World

🎒 Increased Velocity

Team had 4x velocity with TypeScript vs. just JavaScript. Oh, and the Angular team uses it, for goodness' sake!

Demo Time!

❓ Questions β”

@JeremyLikness

https://blog.jeremylikness.com/

https://github.com/JeremyLikness/intro-to-typescript