Key Features

  1. Start with the basics, then enhance your knowledge with in-depth discussions on language features, third-party libraries, design patterns and more
  2. Practical examples that show how to use TypeScript with popular frameworks, including Backbone, Angular 2, React, Aurelia, Node and others
  3. Focus on test-driven development to build high quality applications that are modular, scalable and adaptable

Book Description

The TypeScript language, compiler and open-source development toolset brings JavaScript development up to the enterprise level. It allows us to use ES5, ES6 and ES7 JavaScript language features today - including classes, interfaces, generics, modules and more. It's simple typing syntax enables building large, robust applications using object-oriented techniques and industry standard design principles.

Packed with practical, real-world examples, this book is a guide to bringing the benefits of strongly typed, object-oriented programming and design principles into the JavaScript development space. Starting with core language features, and working through more advanced topics such as generics and asynchronous programming techniques, you will learn how to gain maximum benefit from your JavaScript development with TypeScript. With a strong focus on test-driven development, and coverage of many popular and in-demand JavaScript frameworks, you can fast-track your TypeScript knowledge to a professional level. By the end of this book, you will be able to confidently build TypeScript applications, whether you are targeting Angular 2, Aurelia, React, Backbone, Node or any other JavaScript framework.

What you will learn

  1. Gain an insight into core and advanced TypeScript language features including inheritance, generics, asynchronous programming techniques, promises, decorators and more
  2. Integrate your existing JavaScript libraries and third-party frameworks by writing and using declaration files
  3. Target popular JavaScript frameworks such as jQuery, Backbone, Angular 2, Aurelia, React, Node and Express
  4. Create extensive test suites for your application, including unit testing, integration testing and browser automation with Jasmine, Protactor and Selenium
  5. Organize your application code using modules, AMD loaders, Require and SystemJs
  6. Explore advanced object-oriented design principles including Dependency Injection and Domain Events
  7. Understand and compare the various MVC implementations in Aurelia, Angular 2 and React
  8. Build a complete single-page web application that incorporates css animations to enhance your customer's browsing experience