TypeScript Overview

TypeScript is an open-source, object-oriented language. It was developed and maintained by Microsoft, and licensed under Apache 2 license.

Also, TypeScript extends JavaScript, as it adds data types, classes, and other object-oriented features with type-checking. In addition, it is a typed superset of JavaScript that compiles plain JavaScript.

 

History of TypeScript Versions

VersionReleased Date
TypeScript 0.8October 2012
TypeScript 0.9June 2013
TypeScript 1.0October 2014
TypeScript 2.0September 2016
TypeScript 3.0July 2018
TypeScript 4.0 - latest releaseAugust 2020

Official website: https://www.typescriptlang.org

Source code: https://github.com/Microsoft/TypeScript

 

Why Choose TypeScript?

Javascript is known for its uniqueness as a dynamic programming language with no type of system. It provides primitive data types like strings, numbers, objects, and many more, however, it doesn't check assigned values. 

Also, JavaScript variables are declared by making use of the var keyword, and it can point to any value. However, JavaScript doesn't support classes and other object-oriented features (ECMA2015 supports it). Therefore, without the type system, it is quite difficult to use JavaScript to build complex applications with large teams working on the same code.

The increase in code quality and readability by type system makes it easy to maintain and refactor the codebase. 

Note that, errors can be caught at compile time rather than at runtime.

 

An important reason to use TypeScript is that it catches errors at compile time, this is to enable you to fix them before you run code. Also, it supports object-oriented programming features like data types, classes, enums, and more, hence allowing JavaScript to be used at scale.

In JavaScript, TypeScript compiles into it. The TypeScript compiler is implemented in TypeScript as well and can be used with any browser or JavaScript engine like Node.js. ECMAScript 3 or higher compatible environment to compile is needed by TypeScript. This Is a condition met by all major browsers and JavaScript engines in recent times and currently.

Note that a few of the most popular JavaScript frameworks such as WinJS and Angular.js are written in TypeScript.

 

How can you use TypeScript?

TypeScript code is written in a file with a .ts extension, then compiled into JavaScript by making using the TypeScript compiler. 

We can write TypeScript files in any code editor. But, a TypeScript compiler needs to be installed on your platform. If you are done with the installation, the command tsc <filename>.ts compiles the TypeScript code into a plain JavaScript file. Also, JavaScript files can then be included in the HTML and run on any browser.

 

TypeScript Features

  • Cross-Platform: TypeScript runs on whatever platform that JavaScript runs on. Also, its compiler can be installed on any Operating System such as Windows, Linux, and macOS.
  • Object-Oriented Language: TypeScript provides powerful features such as Classes, Interfaces, and Modules. We can write pure object-oriented code for client-side including server-side development.
  • Static type-checking: Static typing is used by TypeScript. It is done by type annotations. Static typing assists in type checking at compile time. errors can be found while typing the code without running our script each time. also, by making use of the type inference mechanism, if a variable is declared without a type, then it will be inferred based on its value.
  • Optional Static Typing: Static typing is optional in TypeScript when JavaScript's dynamic typing is to be used.
  • DOM Manipulation: Quite similar to JavaScript, TypeScript can be used to manipulate the DOM.
  • ES 6 Features: Features of planned ECMAScript 2015 (ES 6, 7) such as class, interface, Arrow functions, and so on, are included in TypeScript.

 

TypeScript Advantages

  • TypeScript is quite like JavaScript, as it uses the same syntax and semantics. All of TypeScript's code finally gets converted into JavaScript, thereby allowing a quicker learning curve for front-end developers currently coding in JavaScript.
  • It is also closer in syntax to backend languages such as Java and Scala. This assists backend developers write front-end code swiftly.
  • It runs on any browser or JavaScript engine.
  • TypeScript is an open-source language and has received continuous development and maintenance by Microsoft.
  • Also, its code can be called from an existing JavaScript code. It works with existing JavaScript frameworks and libraries without any issues.
  • The TypeScript Definition file, with the .d.ts extension, provides support for existing JavaScript libraries such as Jquery, D3.js, and so on. Hence, TypeScript code can add JavaScript libraries by making use of type definitions to avail the benefits of type-checking, code auto-completion, and documentation in existing dynamically-typed JavaScript libraries.
  • Lastly, TypeScript has easy integration with task runner tools such as Grunt and Gulp to automate the workflow in a program.