SlideShare a Scribd company logo
TypeScript
Nitay Neeman
https://goo.gl/jj5K7x
We will talk about
○ What is TypeScript?
○ Motivation
○ Brief history
○ Main features
○ Conclusions
2
What is TypeScript?
“TypeScript is a free and open source programming
language developed and maintained by Microsoft.
It is a strict superset of JavaScript, and adds optional
static typing and class-based object-oriented
programming to the language.” (Definition by Wiki)
TypeScript transpiles to pure JavaScript.
3
The meaning of transpiling
Compilation - taking source code written in one
language and transforming into another.
For example: C# -> IL.
Transpilation - taking source code written in one
language and transforming into another language
that has a similar level of abstraction.
For example: C++ -> C, Sass / LESS -> CSS.
4
Motivation
○ Syntax checking
○ Code completion
○ Type annotations
○ ES6 support
○ Help us preparing for AngularJS 2.0
5
Brief history
○ 2010 - Microsoft started internal development.
○ 2012 - First release (0.8) of TypeScript.
It was supported in Visual Studio only.
○ 2013 - Next release (0.9) for supporting other IDE’s.
○ 2014 - TypeScript 1.0 was released.
Meanwhile, AtScript was announced by Google.
○ 2015 - Microsoft and Google announced that AtScript
development was abandoned and that features of
AtScript would be implemented in TypeScript. 6
The reaction of Microsoft about AtScript..
7
TypeScript and ECMAScript 6
8
So.. TypeScript includes:
○ Classes
○ Modules
○ Arrow functions
○ Default, optional and rest parameters
And all the awesome features of ES6!
9
New basic types
○ Boolean
○ Number (float)
○ String
○ Array (one type)
○ Enum
○ Any - general type
○ Void - empty type
10
Syntax checking
The following command:
Transpilation output:
11
Interfaces
Interfaces define rules on following types:
○ Objects
○ Functions
○ Arrays
○ Classes
12
Interfaces - Objects
13
Interfaces - Functions
14
Interfaces - Classes
15
Generics
General types for reusability.
16
Generics - Classes
17
Generics - Constraints
18
Mixins
Build a class by partial classes.
19
Declaration Merging
Merging of:
○ Multiple interfaces
○ Multiple modules
○ Modules with:
○ Classes
○ Functions
○ Enums
20
Declaration Merging - Interfaces
The following are equal:
21
Declaration Merging - Modules
In similar way, the following are equal:
22
Declaration Merging - Modules & Classes
Exporting of module members into a class:
23
Declaration Merging - Modules & Enums / Functions
In the same way,
24
Module
- Members
Enum
Enum object with static
members
Function
Function object with
static members
Declaration file (.d.ts)
Without this file - TypeScript transpiler will not
recognize the code of external JavaScript library.
Actually, it guides the transpiler how to structure the
code and it provides the desired “type annotation”.
Download or build your own.
25
Resources
○ TypeScript Definition
○ Compiling vs Transpiling
○ AtScript History
○ Declaration file
○ TypeScript Handbook
○ TypeScript Playground
26
Questions
27
?

More Related Content

What's hot (6)

PDF
TEI ODD support in oXygen
Octavian Nadolu
 
PDF
A hierarchical neural autoencoder for paragraphs and documents
Hayahide Yamagishi
 
PDF
Log stage zero-cost structured logging
Maksym Ratoshniuk
 
PDF
Build web server
Chia-Hao Tsai
 
PDF
FluentDom
Thomas Weinert
 
TEI ODD support in oXygen
Octavian Nadolu
 
A hierarchical neural autoencoder for paragraphs and documents
Hayahide Yamagishi
 
Log stage zero-cost structured logging
Maksym Ratoshniuk
 
Build web server
Chia-Hao Tsai
 
FluentDom
Thomas Weinert
 

Viewers also liked (20)

PPTX
TypeScript DevSum 2013
Michael Herkommer
 
PDF
Typescript: enjoying large scale browser development
Joost de Vries
 
PDF
Typescript for the programmers who like javascript
Andrei Sebastian Cîmpean
 
PPTX
Angular 2.0: Getting ready
Axilis
 
PPTX
TypeScript
Fabian Vilers
 
PPTX
Double page spread stages powerpoint
kittylantos
 
PPTX
Getting started with ES6
Nitay Neeman
 
PPTX
What is New in HTML5?
Nitay Neeman
 
PDF
Estimate Sheet
Eliza Rhoads-Pope
 
DOCX
тема методической работы в 2014
bukish
 
PDF
A Troubled Heart
CrossPointBible
 
PPTX
Feeding Crowds & Turning Heads
CrossPointBible
 
PPTX
Difficult Pathways Of A Disciple
CrossPointBible
 
PPTX
Mythes et réalités : Grands témoins
FFFOD
 
PDF
Annual Report 2012-2013
Karolyn Gaston
 
PDF
Dicey financial chronicle - 13th april, 2013
Jagannadham Thunuguntla
 
PPTX
Building Angular 2.0 applications with TypeScript
MSDEVMTL
 
PPTX
Typescript - a JS superset
Tyrone Allen
 
PDF
Getting Started with TypeScript
Gil Fink
 
PPTX
Typescript in 30mins
Udaya Kumar
 
TypeScript DevSum 2013
Michael Herkommer
 
Typescript: enjoying large scale browser development
Joost de Vries
 
Typescript for the programmers who like javascript
Andrei Sebastian Cîmpean
 
Angular 2.0: Getting ready
Axilis
 
TypeScript
Fabian Vilers
 
Double page spread stages powerpoint
kittylantos
 
Getting started with ES6
Nitay Neeman
 
What is New in HTML5?
Nitay Neeman
 
Estimate Sheet
Eliza Rhoads-Pope
 
тема методической работы в 2014
bukish
 
A Troubled Heart
CrossPointBible
 
Feeding Crowds & Turning Heads
CrossPointBible
 
Difficult Pathways Of A Disciple
CrossPointBible
 
Mythes et réalités : Grands témoins
FFFOD
 
Annual Report 2012-2013
Karolyn Gaston
 
Dicey financial chronicle - 13th april, 2013
Jagannadham Thunuguntla
 
Building Angular 2.0 applications with TypeScript
MSDEVMTL
 
Typescript - a JS superset
Tyrone Allen
 
Getting Started with TypeScript
Gil Fink
 
Typescript in 30mins
Udaya Kumar
 
Ad

Similar to Why do we need TypeScript? (20)

PPTX
TypeScript
Udaiappa Ramachandran
 
PPTX
TypeScript Introduction
Travis van der Font
 
PPTX
TypeScript Overview
Aniruddha Chakrabarti
 
PDF
TypeScript - An Introduction
NexThoughts Technologies
 
PPTX
Type script
Mallikarjuna G D
 
PPTX
Introducing type script
Remo Jansen
 
PPTX
TypeScript: Basic Features and Compilation Guide
Nascenia IT
 
PPTX
Complete Notes on Angular 2 and TypeScript
EPAM Systems
 
PPTX
Typescript ppt
akhilsreyas
 
PDF
Introduction to TypeScript
NexThoughts Technologies
 
PDF
TypeScipt - Get Started
Krishnanand Sivaraj
 
PPTX
Typescript: Beginner to Advanced
Talentica Software
 
PPTX
TypeScript Jump Start
Mostafa
 
PPTX
TypeScript
Software Infrastructure
 
PDF
Type script
srinivaskapa1
 
PDF
TypeScript introduction to scalable javascript application
Andrea Paciolla
 
PPTX
Type script
Zunair Shoes
 
PDF
Reasons to Use Typescript for Your Next Project Over Javascript.pdf
MobMaxime
 
PPTX
TypeScript 101
rachelterman
 
TypeScript Introduction
Travis van der Font
 
TypeScript Overview
Aniruddha Chakrabarti
 
TypeScript - An Introduction
NexThoughts Technologies
 
Type script
Mallikarjuna G D
 
Introducing type script
Remo Jansen
 
TypeScript: Basic Features and Compilation Guide
Nascenia IT
 
Complete Notes on Angular 2 and TypeScript
EPAM Systems
 
Typescript ppt
akhilsreyas
 
Introduction to TypeScript
NexThoughts Technologies
 
TypeScipt - Get Started
Krishnanand Sivaraj
 
Typescript: Beginner to Advanced
Talentica Software
 
TypeScript Jump Start
Mostafa
 
Type script
srinivaskapa1
 
TypeScript introduction to scalable javascript application
Andrea Paciolla
 
Type script
Zunair Shoes
 
Reasons to Use Typescript for Your Next Project Over Javascript.pdf
MobMaxime
 
TypeScript 101
rachelterman
 
Ad

Recently uploaded (20)

PDF
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
PDF
Biography of Daniel Podor.pdf
Daniel Podor
 
PDF
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PDF
What Makes Contify’s News API Stand Out: Key Features at a Glance
Contify
 
PPTX
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
PDF
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
PDF
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
PDF
July Patch Tuesday
Ivanti
 
PDF
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
PDF
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
PPTX
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
PDF
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
PDF
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
PDF
POV_ Why Enterprises Need to Find Value in ZERO.pdf
darshakparmar
 
PDF
IoT-Powered Industrial Transformation – Smart Manufacturing to Connected Heal...
Rejig Digital
 
PDF
CIFDAQ Market Wrap for the week of 4th July 2025
CIFDAQ
 
PDF
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
PDF
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
PDF
The Rise of AI and IoT in Mobile App Tech.pdf
IMG Global Infotech
 
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
Biography of Daniel Podor.pdf
Daniel Podor
 
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
What Makes Contify’s News API Stand Out: Key Features at a Glance
Contify
 
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
July Patch Tuesday
Ivanti
 
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
POV_ Why Enterprises Need to Find Value in ZERO.pdf
darshakparmar
 
IoT-Powered Industrial Transformation – Smart Manufacturing to Connected Heal...
Rejig Digital
 
CIFDAQ Market Wrap for the week of 4th July 2025
CIFDAQ
 
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
The Rise of AI and IoT in Mobile App Tech.pdf
IMG Global Infotech
 

Why do we need TypeScript?