3-644: The Future of TypeScript: ECMAScript 6, Async/Await and Richer Libraries

With TypeScript 1.0, we released a new language built to take full advantage of JavaScript with a rich type system. We’ve watched the community take this and create a number of projects, including one of the largest repositories of JavaScript API documentation available. Modern JavaScript has continued to grow, and now incorporates more concurrency patterns, use of new JavaScript features, and more modular designs. In this talk, we’ll investigate upcoming features of TypeScript, like ECMAScript 6 support and async/await, and how they make working with modern JavaScript patterns and libraries easier.

1.0x

3-644: The Future of TypeScript: ECMAScript 6, Async/Await and Richer Libraries

Created 2 years ago

Duration 0:58:09
lesson view count 6023
With TypeScript 1.0, we released a new language built to take full advantage of JavaScript with a rich type system. We’ve watched the community take this and create a number of projects, including one of the largest repositories of JavaScript API documentation available. Modern JavaScript has continued to grow, and now incorporates more concurrency patterns, use of new JavaScript features, and more modular designs. In this talk, we’ll investigate upcoming features of TypeScript, like ECMAScript 6 support and async/await, and how they make working with modern JavaScript patterns and libraries easier.
Select the file type you wish to download
Slide Content
  1. Anders Hejlsberg

    Slide 1 - Anders Hejlsberg

    • Technical Fellow
    • Microsoft
    • The Future of TypeScript: ECMAScript 6, Async/Await and Richer Libraries
    • 3-644
  2. TypeScript: A typed superset of JavaScript thatcompiles to plain JavaScript.

    Slide 2 - TypeScript: A typed superset of JavaScript thatcompiles to plain JavaScript.

  3. TypeScript: A typed superset of JavaScript thatcompiles to plain JavaScript.

    Slide 3 - TypeScript: A typed superset of JavaScript thatcompiles to plain JavaScript.

  4. Static Types  Better Tooling.

    Slide 4 - Static Types  Better Tooling.

  5. Features from the Future, Today.

    Slide 5 - Features from the Future, Today.

  6. Any browser. Any host. Any OS.

    Slide 6 - Any browser. Any host. Any OS.

  7. Features from the Future, Today.

    Slide 7 - Features from the Future, Today.

  8. +

    Slide 8 - +

    • +
  9. +

    Slide 9 - +

    • +
  10. +

    Slide 10 - +

    • +
  11. Demo

    Slide 11 - Demo

  12. Demo

    Slide 12 - Demo

  13. Demo

    Slide 13 - Demo

  14. Brad GreenMiško HeveryGoogle Angular Team

    Slide 14 - Brad GreenMiško HeveryGoogle Angular Team

  15. Brad GreenMiško HeveryGoogle Angular Team

    Slide 15 - Brad GreenMiško HeveryGoogle Angular Team

  16. Slide 16

    • AtScript
  17. Angular <3 TypeScript

    Slide 17 - Angular <3 TypeScript

  18. Built on TypeScript

    Slide 18 - Built on TypeScript

  19. angular.io

    Slide 19 - angular.io

  20. Meet the TypeScript and Angular teamsToday @ 1-2 PMLounge area across from room 3014

    Slide 20 - Meet the TypeScript and Angular teamsToday @ 1-2 PMLounge area across from room 3014

  21. Meet the TypeScript and Angular teamsToday @ 1-2 PMLounge area across from room 3014

    Slide 21 - Meet the TypeScript and Angular teamsToday @ 1-2 PMLounge area across from room 3014

  22. TypeScript Server

    Slide 22 - TypeScript Server

    • Editor
    • TypeScript plug-in
    • TSServerNode.js
    • JSON
  23. Structural typing and type inference

    Slide 23 - Structural typing and type inference

    • In practice very few type annotations are necessary
    • Interfaces, generics, union types, tuple types
    • Increases accuracy and expressiveness of type system
    • Works with existing JavaScript libraries
    • Declaration files can be written and maintained separately
    • Types enable tooling
    • Provide verification and assistance, but not hard guarantees
    • Type System
    • An accurate static representation of JavaScript’s dynamic run-time type system
  24. Modules

    Slide 24 - Modules

    • Classes
    • Arrow functions
    • Default parameters
    • Destructuring
    • Spread and rest
    • Let and const
    • for...of
    • Object literal methods
    • Shorthand properties
    • Computed properties
    • Octal / binary literals
    • Symbols
    • Template strings
    • Features from the Future, Today
    • Compiles ECMAScript 6 code to ECMAScript 3 or 5 code using CommonJS or AMD modules
  25. Community

    Slide 26 - Community

    • https://github.com/Microsoft/TypeScript
    • Over 3500 StackOverflow questions
    • Frameworks
    • Over 800 .d.ts library definitions on Definitely Typed repository covering practically all popular JavaScript frameworks
    • Tool support
    • IDEs: Visual Studio, Sublime Text, Atom, Eclipse, WebStorm, …
    • Build and test: ASP.NET, grunt, gulp, node.js, tsUnit
    • TypeScript Ecosystem
    • An Open Source language for large scale JavaScript development.
  26. TypeScript 1.4

    Slide 27 - TypeScript 1.4

    • Union types, type guards, const enums, let and const, template strings
    • TypeScript 1.5
    • Most of ES6, tsconfig.json, TSServer, Sublime Text plug-in
    • TypeScript 1.6
    • Async/await, generators, module bundling
    • TypeScript 2.0
    • Class expressions, local types
    • Investigate mixins, abstract classes, etc.
    • TypeScript Roadmap
    • An Open Source language for large scale JavaScript development.