SlideShare a Scribd company logo
TypeScript, Dart, CoffeeScript
and JavaScript Comparison
LifeMichael.com
Haim Michael
September 7th, 2016
All logos, trade marks and brand names used in this presentation belong
to the respective owners.
Table of Content
LifeMichael.com
● What is JavaScript?
● ECMAScript Specification
● Transpiling into JavaScript
● What is TypeScript?
● What is Dart?
● What is CoffeeScript?
● Detailed Comparison
● Questions & Answers
What is JavaScript?
LifeMichael.com
● The JavaScript programming language is been used
on multiple different platforms. Some belong to the
client side. Other to the server.
ECMA Script Specification
LifeMichael.com
● The ECMAScript sets some order in the JavaScript
eco system.
● ECMAScript 2015 (ES6)
ECMAScript 2016 (ES7)
ECMAScript 2017 (ES8)
...
ECMA Script Specification
LifeMichael.com
http://kangax.github.io/compat-table/es6/
Transpiling into JavaScript
LifeMichael.com
● There is a huge number of various programming
languages we can transpile into JavaScript.
https://github.com/jashkenas/coffeescript/wiki/list-of-
languages-that-compile-to-js
What is TypeScript?
LifeMichael.com
● The TypeScript programming language was
developed by Microsoft. It is an open source
programming language.
● The code we write in TypeScript is transpiled into
JavaScript, so we can basically use TypeScript
wherever we use JavaScript.
http://www.typescriptlang.org
What is TypeScript?
LifeMichael.com
● TypeScript is a superset of JavaScript. It includes the
entire JavaScript programming language together with
additional capabilities.
● In general, nearly every code we can write in
JavaScript can be included in code we write in
TypeScript.
What is TypeScript?
LifeMichael.com
● TypeScript's main added value is the ability to code
with types. It allows us to define new classes and new
interfaces. TypeScript allows us to specify the type of
each and every variable and is even capable of
interfering the type by itself. TypeScript allows us to
use JavaScript as if it was a strictly type programming
language.
What is TypeScript?
LifeMichael.com
class Rectangle
{
private width:number;
private height:number;
constructor( w:number, h:number)
{
this.setWidtht(w);
this.setHeight(h);
}
setWidtht(num:number):void
{
if(num>0)
{
this.width = num;
}
}
…
}
What is Dart?
LifeMichael.com
● Dart is an open source class based, object oriented,
optionally typed programming language that allows us
to develop browser based one page web applications.
Dart can be used for the server side.
● Dart is developed by Google and the initial plan was
to have a Dart VM installed on every web browser.
http://www.dartlang.org
What is Dart?
LifeMichael.com
● Using the Dart virtual machine we can execute the
code written in Dart on the server side.
● We can execute the code either by using a web
browser that supports Dart or by compiling the code
into JavaScript.
What is Dart?
LifeMichael.com
class Rectangle
{
double _width;
double _height;
Rectangle(double w,double h)
{
width = w;
height = h;
}
get width => _width;
set width(size) => (size>0)?_width=size:_width=10.0;
get height => _height;
set height(size) => (size>0)?_height=size:_height=10.0;
area() => width * height;
perimeter() => 2*(width+height);
}
What is Dart?
LifeMichael.com
main()
{
var ob = new Rectangle(3.2,4.4);
ob.width = 20.2;
ob.height = -4.1;
var area = ob.area();
print("area is $area");
}
What is CoffeeScript?
LifeMichael.com
● CoffeeScript is a relatively small programming
language we can use for writing code and later
transpile it into JavaScript.
● CoffeeScript evolvement was inspired by Python and
Ruby. CoffeeScript provides developers with tools
similar to those you can find in Python and Ruby.
http://www.coffeescript.org
What is CoffeeScript?
LifeMichael.com
class Person
constructor: (@firstName,@lastName,@id) ->
printDetails: ->
console.log "first name is #{@firstName}"
console.log "last name is #{@lastName}"
console.log "id is #{@id}"
Person a = new Person("haim","michael",123123)
Person b = new Person("danidin","jack",234234)
a.printDetails()
b.printDetails()
Detailed Comparison
LifeMichael.com
Strict Dynamic
WhiteSpacesSensitivity
Types Capabilities
LowHigh
Coffee Script
Dart
TypeScript JavaScript
Detailed Comparison
LifeMichael.com
Low High
CapabilitiestoUse3rd
PartyJSLibraries
Object Oriented Capabilities
LowHigh
Coffee Script
Dart TypeScript
JavaScript
Detailed Comparison
LifeMichael.com
Not Available Available
ReleaseofNewVersions
Independent Virtual Machine
RareFrequently
Coffee Script Dart
TypeScript
JavaScript
(1) https://www.techempower.com/benchmarks/
(1)
Detailed Comparison
LifeMichael.com
Simple Difficult
SupportforGenerics
Developing with Angular 2
NotAvailableAvailable
Coffee Script
Dart
TypeScript
JavaScript
Detailed Comparison
LifeMichael.com
Low
SupportforMethodsOverloading
Support for Use of Interfaces
NotAvailableAvailable
Coffee Script
Dart
TypeScript
JavaScript
High
Detailed Comparison
LifeMichael.com
Low
SupportforMethodsOverloading
Support for Access Modifiers
NotAvailableAvailable
Coffee Script
Dart
TypeScript
JavaScript
High
Detailed Comparison
LifeMichael.com
Not Available
SupportforEnum
Support for Abstract Classes
NotAvailableAvailable
Coffee Script
Dart
TypeScript
JavaScript
Available
Detailed Comparison
LifeMichael.com
Low
IDESupport
Popularity
LowHigh
Coffee Script
Dart
TypeScript JavaScript
High
Detailed Comparison
LifeMichael.com
Questions & Answers
LifeMichael.com
● Courses I start to deliver in HIT this November (28 weekly
meetings, 6800 shekels) include the following:
Android 7 Java Applications Development
Software Engineering in PHP
Front End Development
tinyurl.com/lifemichaelhitcourses
● If you enjoyed my lecture please leave me a comment
at http://speakermix.com/life-michael.
Thanks for your time!

More Related Content

PDF
Hybrid App using WordPress
Haim Michael
 
PDF
Node.js Crash Course (Jump Start)
Haim Michael
 
PDF
The WebView Role in Hybrid Applications
Haim Michael
 
PDF
JavaScript Jump Start 20220214
Haim Michael
 
PPT
JAVA SCRIPT
Go4Guru
 
PDF
Introduction to Javascript programming
Fulvio Corno
 
PPTX
Monster JavaScript Course - 50+ projects and applications
Laurence Svekis ✔
 
PPTX
JavaScript DOM - Dynamic interactive Code
Laurence Svekis ✔
 
Hybrid App using WordPress
Haim Michael
 
Node.js Crash Course (Jump Start)
Haim Michael
 
The WebView Role in Hybrid Applications
Haim Michael
 
JavaScript Jump Start 20220214
Haim Michael
 
JAVA SCRIPT
Go4Guru
 
Introduction to Javascript programming
Fulvio Corno
 
Monster JavaScript Course - 50+ projects and applications
Laurence Svekis ✔
 
JavaScript DOM - Dynamic interactive Code
Laurence Svekis ✔
 

What's hot (20)

PDF
JavaScript Jump Start
Haim Michael
 
PDF
Javascript talk1
Pratik Kunpara
 
PDF
Frameworks in JavaScript
Haim Michael
 
PDF
WordPress Jump Start
Haim Michael
 
PDF
HTML5 Jump Start
Haim Michael
 
PPTX
JavaScript Core fundamentals - Learn JavaScript Here
Laurence Svekis ✔
 
PPT
JavaScript Missing Manual, Ch. 1
Gene Babon
 
PPTX
Java script session 3
Saif Ullah Dar
 
PDF
10 java script projects full source code
Laurence Svekis ✔
 
PDF
How to Build ToDo App with Vue 3 + TypeScript
Katy Slemon
 
PDF
Web components the future is here
Gil Fink
 
PDF
JavaScript guide 2020 Learn JavaScript
Laurence Svekis ✔
 
PPTX
Introduction to java_script
Basavaraj Hampali
 
PDF
Anyone Can Code: JavaScript - 6/24/2014
Joseph Mainwaring
 
PPTX
Java script
reddivarihareesh
 
PPTX
Console in javaScript
Vivek Kumar
 
PPTX
Java script Session No 1
Saif Ullah Dar
 
PDF
Why and How to Use Virtual DOM
Daiwei Lu
 
PDF
Multi modularized project setup with gulp, typescript and angular.js
David Amend
 
PDF
Javascript Roadmap - The Basics
Aswin Barath
 
JavaScript Jump Start
Haim Michael
 
Javascript talk1
Pratik Kunpara
 
Frameworks in JavaScript
Haim Michael
 
WordPress Jump Start
Haim Michael
 
HTML5 Jump Start
Haim Michael
 
JavaScript Core fundamentals - Learn JavaScript Here
Laurence Svekis ✔
 
JavaScript Missing Manual, Ch. 1
Gene Babon
 
Java script session 3
Saif Ullah Dar
 
10 java script projects full source code
Laurence Svekis ✔
 
How to Build ToDo App with Vue 3 + TypeScript
Katy Slemon
 
Web components the future is here
Gil Fink
 
JavaScript guide 2020 Learn JavaScript
Laurence Svekis ✔
 
Introduction to java_script
Basavaraj Hampali
 
Anyone Can Code: JavaScript - 6/24/2014
Joseph Mainwaring
 
Java script
reddivarihareesh
 
Console in javaScript
Vivek Kumar
 
Java script Session No 1
Saif Ullah Dar
 
Why and How to Use Virtual DOM
Daiwei Lu
 
Multi modularized project setup with gulp, typescript and angular.js
David Amend
 
Javascript Roadmap - The Basics
Aswin Barath
 
Ad

Viewers also liked (18)

PDF
JavaScript, Dart, TypeScript & CoffeeScript Comparison
Haim Michael
 
PPTX
CodeFest 2014. Пугачев С. — Язык TypeScript или JavaScript на стероидах
CodeFest
 
PDF
PHP Jump Start
Haim Michael
 
PDF
TypeScript 2 in action
Alexander Rusakov
 
PDF
Introduction to Dart
RameshNair6
 
PPTX
GWTcon 2015 - Best development practices for GWT web applications
Arcbees
 
PDF
How to build a Dart and Firebase app in 30 mins
Jana Moudrá
 
PDF
GWTcon 2015 - Beyond GWT 3.0 Panic
Cristiano Costantini
 
PDF
Introduction to the Dart language
Jana Moudrá
 
PDF
使用 Java 上的 future/promise API
koji lin
 
PDF
Introduction to Flutter - truly crossplatform, amazingly fast
Bartosz Kosarzycki
 
PDF
TypeScript - An Introduction
NexThoughts Technologies
 
PPTX
Typescript ppt
akhilsreyas
 
PPTX
Getting started with typescript
C...L, NESPRESSO, WAFAASSURANCE, SOFRECOM ORANGE
 
PPTX
TypeScript Overview
Aniruddha Chakrabarti
 
PPT
Mentor Coaching at Regal Unlimited
Subash CV - Executive Coach
 
PPTX
Military Professional Human Resources of all types
Agha A
 
JavaScript, Dart, TypeScript & CoffeeScript Comparison
Haim Michael
 
CodeFest 2014. Пугачев С. — Язык TypeScript или JavaScript на стероидах
CodeFest
 
PHP Jump Start
Haim Michael
 
TypeScript 2 in action
Alexander Rusakov
 
Introduction to Dart
RameshNair6
 
GWTcon 2015 - Best development practices for GWT web applications
Arcbees
 
How to build a Dart and Firebase app in 30 mins
Jana Moudrá
 
GWTcon 2015 - Beyond GWT 3.0 Panic
Cristiano Costantini
 
Introduction to the Dart language
Jana Moudrá
 
使用 Java 上的 future/promise API
koji lin
 
Introduction to Flutter - truly crossplatform, amazingly fast
Bartosz Kosarzycki
 
TypeScript - An Introduction
NexThoughts Technologies
 
Typescript ppt
akhilsreyas
 
Getting started with typescript
C...L, NESPRESSO, WAFAASSURANCE, SOFRECOM ORANGE
 
TypeScript Overview
Aniruddha Chakrabarti
 
Mentor Coaching at Regal Unlimited
Subash CV - Executive Coach
 
Military Professional Human Resources of all types
Agha A
 
Ad

Similar to TypeScript, Dart, CoffeeScript and JavaScript Comparison (20)

PDF
Dart Jump Start
Haim Michael
 
PDF
8.-Javascript-report powerpoint presentation
JohnLagman3
 
PPTX
Type script
Mallikarjuna G D
 
PDF
TypeScript: Angular's Secret Weapon
Laurent Duveau
 
PPT
Java script anywhere. What Nombas was doing pre-acquisition.
Brent Noorda
 
PDF
Survive JavaScript - Strategies and Tricks
Juho Vepsäläinen
 
PDF
TypeScript: Angular's Secret Weapon
Laurent Duveau
 
PPTX
Bringing your app to the web with Dart - Chris Buckett (Entity Group)
jaxLondonConference
 
PPTX
Unit 1 - TypeScript & Introduction to Angular CLI.pptx
Malla Reddy University
 
PPTX
C # (C Sharp).pptx
SnapeSever
 
PDF
Type script
srinivaskapa1
 
PDF
Javascript pdf for beginners easy levell
SakshamGupta957136
 
PDF
Building End-to-End Apps Using Typescript
Gil Fink
 
PPTX
js.pptx
SuhaibKhan62
 
PPTX
Gab 2018 seguridad y escalado en azure service fabric
Alberto Diaz Martin
 
PPTX
Gab 2018 seguridad y escalado en azure service fabric
Alberto Diaz Martin
 
PDF
An Introduction to TypeScript
WrapPixel
 
PPTX
TypeScript VS JavaScript.pptx
Albiorix Technology
 
PPT
Introduction To Groovy 2005
Tugdual Grall
 
PDF
The Rust Programming Language
Mario Alexandro Santini
 
Dart Jump Start
Haim Michael
 
8.-Javascript-report powerpoint presentation
JohnLagman3
 
Type script
Mallikarjuna G D
 
TypeScript: Angular's Secret Weapon
Laurent Duveau
 
Java script anywhere. What Nombas was doing pre-acquisition.
Brent Noorda
 
Survive JavaScript - Strategies and Tricks
Juho Vepsäläinen
 
TypeScript: Angular's Secret Weapon
Laurent Duveau
 
Bringing your app to the web with Dart - Chris Buckett (Entity Group)
jaxLondonConference
 
Unit 1 - TypeScript & Introduction to Angular CLI.pptx
Malla Reddy University
 
C # (C Sharp).pptx
SnapeSever
 
Type script
srinivaskapa1
 
Javascript pdf for beginners easy levell
SakshamGupta957136
 
Building End-to-End Apps Using Typescript
Gil Fink
 
js.pptx
SuhaibKhan62
 
Gab 2018 seguridad y escalado en azure service fabric
Alberto Diaz Martin
 
Gab 2018 seguridad y escalado en azure service fabric
Alberto Diaz Martin
 
An Introduction to TypeScript
WrapPixel
 
TypeScript VS JavaScript.pptx
Albiorix Technology
 
Introduction To Groovy 2005
Tugdual Grall
 
The Rust Programming Language
Mario Alexandro Santini
 

More from Haim Michael (20)

PDF
IntelliJ Debugging Essentials for Java Developers
Haim Michael
 
PDF
The Visitor Classic Design Pattern [Free Meetup]
Haim Michael
 
PDF
Typing in Python: Bringing Clarity, Safety and Speed to Your Code [Free Meetup]
Haim Michael
 
PDF
Introduction to Pattern Matching in Java [Free Meetup]
Haim Michael
 
PDF
Mastering The Collections in JavaScript [Free Meetup]
Haim Michael
 
PDF
Beyond Java - Evolving to Scala and Kotlin
Haim Michael
 
PDF
JavaScript Promises Simplified [Free Meetup]
Haim Michael
 
PDF
Scala Jump Start [Free Online Meetup in English]
Haim Michael
 
PDF
The MVVM Architecture in Java [Free Meetup]
Haim Michael
 
PDF
Kotlin Jump Start Online Free Meetup (June 4th, 2024)
Haim Michael
 
PDF
Anti Patterns
Haim Michael
 
PDF
Virtual Threads in Java
Haim Michael
 
PDF
MongoDB Design Patterns
Haim Michael
 
PDF
Introduction to SQL Injections
Haim Michael
 
PDF
Record Classes in Java
Haim Michael
 
PDF
Microservices Design Patterns
Haim Michael
 
PDF
Structural Pattern Matching in Python
Haim Michael
 
PDF
Unit Testing in Python
Haim Michael
 
PDF
OOP Best Practices in JavaScript
Haim Michael
 
PDF
Java Jump Start
Haim Michael
 
IntelliJ Debugging Essentials for Java Developers
Haim Michael
 
The Visitor Classic Design Pattern [Free Meetup]
Haim Michael
 
Typing in Python: Bringing Clarity, Safety and Speed to Your Code [Free Meetup]
Haim Michael
 
Introduction to Pattern Matching in Java [Free Meetup]
Haim Michael
 
Mastering The Collections in JavaScript [Free Meetup]
Haim Michael
 
Beyond Java - Evolving to Scala and Kotlin
Haim Michael
 
JavaScript Promises Simplified [Free Meetup]
Haim Michael
 
Scala Jump Start [Free Online Meetup in English]
Haim Michael
 
The MVVM Architecture in Java [Free Meetup]
Haim Michael
 
Kotlin Jump Start Online Free Meetup (June 4th, 2024)
Haim Michael
 
Anti Patterns
Haim Michael
 
Virtual Threads in Java
Haim Michael
 
MongoDB Design Patterns
Haim Michael
 
Introduction to SQL Injections
Haim Michael
 
Record Classes in Java
Haim Michael
 
Microservices Design Patterns
Haim Michael
 
Structural Pattern Matching in Python
Haim Michael
 
Unit Testing in Python
Haim Michael
 
OOP Best Practices in JavaScript
Haim Michael
 
Java Jump Start
Haim Michael
 

Recently uploaded (20)

PPTX
Services offered by Dynamic Solutions in Pakistan
DaniyaalAdeemShibli1
 
PDF
ShowUs: Pharo Stream Deck (ESUG 2025, Gdansk)
ESUG
 
PPTX
The-Dawn-of-AI-Reshaping-Our-World.pptxx
parthbhanushali307
 
PPTX
Visualising Data with Scatterplots in IBM SPSS Statistics.pptx
Version 1 Analytics
 
PDF
The Role of Automation and AI in EHS Management for Data Centers.pdf
TECH EHS Solution
 
PPTX
PFAS Reporting Requirements 2026 Are You Submission Ready Certivo.pptx
Certivo Inc
 
PDF
Microsoft Teams Essentials; The pricing and the versions_PDF.pdf
Q-Advise
 
PDF
Bandai Playdia The Book - David Glotz
BluePanther6
 
PPTX
Save Business Costs with CRM Software for Insurance Agents
Insurance Tech Services
 
PDF
IEEE-CS Tech Predictions, SWEBOK and Quantum Software: Towards Q-SWEBOK
Hironori Washizaki
 
PDF
Become an Agentblazer Champion Challenge Kickoff
Dele Amefo
 
PDF
Jenkins: An open-source automation server powering CI/CD Automation
SaikatBasu37
 
PDF
Community & News Update Q2 Meet Up 2025
VictoriaMetrics
 
PPTX
AIRLINE PRICE API | FLIGHT API COST |
philipnathen82
 
PPTX
Role Of Python In Programing Language.pptx
jaykoshti048
 
PDF
How to Seamlessly Integrate Salesforce Data Cloud with Marketing Cloud.pdf
NSIQINFOTECH
 
PPTX
AI-Ready Handoff: Auto-Summaries & Draft Emails from MQL to Slack in One Flow
bbedford2
 
PPTX
EU POPs Limits & Digital Product Passports Compliance Strategy 2025.pptx
Certivo Inc
 
PDF
PFAS Reporting Requirements 2026 Are You Submission Ready Certivo.pdf
Certivo Inc
 
PDF
Exploring AI Agents in Process Industries
amoreira6
 
Services offered by Dynamic Solutions in Pakistan
DaniyaalAdeemShibli1
 
ShowUs: Pharo Stream Deck (ESUG 2025, Gdansk)
ESUG
 
The-Dawn-of-AI-Reshaping-Our-World.pptxx
parthbhanushali307
 
Visualising Data with Scatterplots in IBM SPSS Statistics.pptx
Version 1 Analytics
 
The Role of Automation and AI in EHS Management for Data Centers.pdf
TECH EHS Solution
 
PFAS Reporting Requirements 2026 Are You Submission Ready Certivo.pptx
Certivo Inc
 
Microsoft Teams Essentials; The pricing and the versions_PDF.pdf
Q-Advise
 
Bandai Playdia The Book - David Glotz
BluePanther6
 
Save Business Costs with CRM Software for Insurance Agents
Insurance Tech Services
 
IEEE-CS Tech Predictions, SWEBOK and Quantum Software: Towards Q-SWEBOK
Hironori Washizaki
 
Become an Agentblazer Champion Challenge Kickoff
Dele Amefo
 
Jenkins: An open-source automation server powering CI/CD Automation
SaikatBasu37
 
Community & News Update Q2 Meet Up 2025
VictoriaMetrics
 
AIRLINE PRICE API | FLIGHT API COST |
philipnathen82
 
Role Of Python In Programing Language.pptx
jaykoshti048
 
How to Seamlessly Integrate Salesforce Data Cloud with Marketing Cloud.pdf
NSIQINFOTECH
 
AI-Ready Handoff: Auto-Summaries & Draft Emails from MQL to Slack in One Flow
bbedford2
 
EU POPs Limits & Digital Product Passports Compliance Strategy 2025.pptx
Certivo Inc
 
PFAS Reporting Requirements 2026 Are You Submission Ready Certivo.pdf
Certivo Inc
 
Exploring AI Agents in Process Industries
amoreira6
 

TypeScript, Dart, CoffeeScript and JavaScript Comparison