SlideShare a Scribd company logo
TypeScript
Use it already yesterday
and be prepared for Angular 2
David Amend
David.Amend@it-amend.de
Conservative Bleeding edge
https://www.dab-bank.de/Konto-Kredit/DAB-Finanzmanager-Demo/
About me
... “ I even heard that they will
use Angular 2 in a galaxy far,
far away…”
http://www.ngparty.cz/ngBigParty-II/##what-to-expect
... “ I even heard that they will
use Angular 2 in a galaxy far,
far away…”
http://www.ngparty.cz/ngBigParty-II/##what-to-expect
Disclamer
no A2x code
in presentation
“ Use A2.x with TypeScript ”
Disclamer
no A2x code
in presentation
“
Learn the fundamentals of
TypeScript NOW !
” Disclamer
no A2x code
in presentation
Questions to audience
1. Who prefers typed languages to non typed?
2. Who uses TypeScript in project already?
The Type in TypeScript
Typing Evolution: Prefix
var sAmount = "100";
var nCalcConditions = function(sAmount, iRate){
return sAmount * nRate;
}
Typing Evolution: Jsdoc Closure Compiler
/**
* @interface
*/
function Shape() {};
Shape.prototype.draw = function() {};
/**
* @constructor
* @implements {Shape}
*/
function Square() {};
Square.prototype.draw = function() {
};
Typing Evolution: GWT, Dart
Button myButton = new Button("x");
myButton.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent event) { ///...
}
});
flexTable.setWidget(row, 3, myButton);
VM JS
Problem:
Hard to combine
GWT:
Strong Java IDE support
TypeScript
What you should know ?
TypeScript: What you should know ?
d.ts
Interfaces
1.
TypeScript: What you should know ?
d.ts
Interfaces
Decorators
1. 2.
Angular 2 : learn TypeScript already with Angular 1
Module B
Module B
Interfaces to support modular projects, combine client & server models
Module A Module B
*.d.ts
check interfaces
→ by compile time
*.ts
Async loaded
→ at runtime
define interface use interface
*.d.ts
REST-Services
*.ts
TypeScript: What you should know ?
d.ts
Interfaces
Decorators
1. 2.
So much to explore: Decorators, ...
import { Component } from 'ng-forward';
@Component({
selector: 'nested',
template: '<h3>Nested</h3>'
})
@DebugLog
class Nested{ }
HTML-Type BindingIDE-Refactoring Support Literal Types
Aspect Oriented
Programming
TypeScript
Cool links
https://github.com/ngUpgraders/ng-forward
https://github.com/ngParty/ng-metadata
https://github.com/raphaeljolivet/java2typescript
https://github.com/wycats/javascript-decorators
http://blog.wolksoftware.com/decorators-metadata-reflection-in-typescript-from-novice-to-expert-
part-3
https://basarat.gitbooks.io/
There cannot be reasons
NOT to use TypeScript!
Questions &
Discussion
Code Demo
1. Starting situation
var loanLimit = “100”;
2. Extend build process
.pipe(tsc(“*.js”));
3. Congratz! You are using TypeScript !
IDE Support by separate .d.ts files
Smooth way to start using TypeScript
4. var loanLimit : string = “100”;
ILoans-Service.d.ts
interface ILoanModel {
id : number, ...
}
LoansController.ts
var loanmodel : ILoanModel = { … }
No generation of code !
export interface IDeleteDomesticTemplateRequestDTO {
cifId: string;
templateName: string;
}
export interface IDeleteDomesticTemplateResponseDTO {
errorCode: string;
}
export enum IQuoteStatusEnum {
CUSTOMER_DATA_CONFIRMED = <string>"CUSTOMER_DATA_CONFIRMED",
}
ES-6, module support, =>, decorators, html type support, …, tslint, sourcemaps, …
namespace danubeCorePortal {
class DanubeCorePortalController {
private sideNavigationItems;
constructor(private $mdSidenav : angular.material.MDSidenavObject) {
}
@Log
public toggleSubnavigation ($event) {
this.$mdSidenav( "left").toggle();
}
}
}
Generation of code !
TypeScript is widely used
Anders Hejlsberg
C# Delphi TurboPascal TypeScript
C#
Angular 2 : learn TypeScript already with Angular 1
Angular 2 : learn TypeScript already with Angular 1
Angular 2 : learn TypeScript already with Angular 1
Why to use Types ?
1. Refactoring support in IDE
2. Exploration of code
3. Explain code to foreigners ( and myself)
ES2016 ES7
tsc --
experimentalDecorato
rs main.ts
https://www.sitepen.
com/blog/2015/10/20/typescript-
decorators/
annotate and modify classes and properties at design
time.
→ Interface
Demotime: Future Bank
TypeScript, Angular Material, A1x, ...

More Related Content

PDF
Multi modularized project setup with gulp, typescript and angular.js
David Amend
 
PDF
Real World AngularJS recipes: beyond TodoMVC
Carlo Bonamico
 
PDF
A Story about AngularJS modularization development
Johannes Weber
 
PDF
The curious Life of JavaScript - Talk at SI-SE 2015
jbandi
 
PDF
Angular js best practice
Matteo Scandolo
 
PDF
Angular Best Practices v2
Henry Tao
 
PDF
XebiConFr 15 - Brace yourselves Angular 2 is coming
Publicis Sapient Engineering
 
PDF
Angular 1.x reloaded: improve your app now! and get ready for 2.0
Carlo Bonamico
 
Multi modularized project setup with gulp, typescript and angular.js
David Amend
 
Real World AngularJS recipes: beyond TodoMVC
Carlo Bonamico
 
A Story about AngularJS modularization development
Johannes Weber
 
The curious Life of JavaScript - Talk at SI-SE 2015
jbandi
 
Angular js best practice
Matteo Scandolo
 
Angular Best Practices v2
Henry Tao
 
XebiConFr 15 - Brace yourselves Angular 2 is coming
Publicis Sapient Engineering
 
Angular 1.x reloaded: improve your app now! and get ready for 2.0
Carlo Bonamico
 

What's hot (20)

PPTX
Angular 2 - Better or worse
Vladimir Georgiev
 
PDF
Angular 2 : le réveil de la force
Nicolas PENNEC
 
PDF
Huge web apps web expo 2013
Daniel Steigerwald
 
PPTX
Angular 4 and TypeScript
Ahmed El-Kady
 
PPTX
AngularJS: Service, factory & provider
Corley S.r.l.
 
PDF
JavaScript - The Universal Platform?
Jonas Bandi
 
PDF
Angular 2 overview
Jesse Warden
 
PPTX
Web Performance & Latest in React
Talentica Software
 
PDF
Getting Started with Angular 2
FITC
 
PPTX
A walkthrough of JavaScript ES6 features
Michal Juhas
 
PDF
Introduction to Javascript programming
Fulvio Corno
 
PDF
Angular 2: What's New?
jbandi
 
PDF
Shit happens… debugging an Angular app.
Laurent Duveau
 
PDF
Android clean architecture workshop 3h edition
Jorge Ortiz
 
PPTX
Angular 2 어디까지 왔을까
장현 한
 
PDF
Tech Webinar: Angular 2, Introduction to a new framework
Codemotion
 
PPTX
Javascript Best Practices and Intro to Titanium
Techday7
 
PDF
AngularJS - Overcoming performance issues. Limits.
Dragos Mihai Rusu
 
PDF
AngularJS performance & production tips
Nir Kaufman
 
PDF
Introduction to angular 2
Dhyego Fernando
 
Angular 2 - Better or worse
Vladimir Georgiev
 
Angular 2 : le réveil de la force
Nicolas PENNEC
 
Huge web apps web expo 2013
Daniel Steigerwald
 
Angular 4 and TypeScript
Ahmed El-Kady
 
AngularJS: Service, factory & provider
Corley S.r.l.
 
JavaScript - The Universal Platform?
Jonas Bandi
 
Angular 2 overview
Jesse Warden
 
Web Performance & Latest in React
Talentica Software
 
Getting Started with Angular 2
FITC
 
A walkthrough of JavaScript ES6 features
Michal Juhas
 
Introduction to Javascript programming
Fulvio Corno
 
Angular 2: What's New?
jbandi
 
Shit happens… debugging an Angular app.
Laurent Duveau
 
Android clean architecture workshop 3h edition
Jorge Ortiz
 
Angular 2 어디까지 왔을까
장현 한
 
Tech Webinar: Angular 2, Introduction to a new framework
Codemotion
 
Javascript Best Practices and Intro to Titanium
Techday7
 
AngularJS - Overcoming performance issues. Limits.
Dragos Mihai Rusu
 
AngularJS performance & production tips
Nir Kaufman
 
Introduction to angular 2
Dhyego Fernando
 
Ad

Viewers also liked (20)

PDF
Angularjs practical project experiences with javascript development in a bank
David Amend
 
PDF
Performance monitoring measurement angualrjs single page apps with phantomas
David Amend
 
PPTX
Advanced AngularJS Tips and Tricks
Jeremy Likness
 
PDF
Story about module management with angular.js
David Amend
 
PDF
Grunt.js and Yeoman, Continous Integration
David Amend
 
PDF
Javascript & Angular .js for the enterprise, lessons learned, typescript scal...
David Amend
 
PDF
Gwt presentation
철민 배
 
PPTX
lA educacion-socialista
Daniel Scienfan
 
PPTX
How do you spell relief???
Chuck43
 
DOCX
Mateo Quintero
Mateoqintero
 
PDF
Renovatie aluminium
Sven Torfs
 
PPTX
Sermon 1 John 5:8-21
CrossPointBible
 
PPT
EVANGELISTIC PROCESS FOR THE LOCAL CHURCH -TR-15
Jordan Jordanidis
 
PDF
Reasons to migrate to modern web development with JavaScript
David Amend
 
PDF
Gwt widget frameworks_presentation
David Amend
 
PDF
Geecon 2014 - Five Ways to Not Suck at Being a Java Freelancer
Roberto Cortez
 
PPTX
Furniture industry in India
Yogesh Gokule
 
PPTX
Typescript - a JS superset
Tyrone Allen
 
PDF
Maven - Taming the Beast
Roberto Cortez
 
PDF
Migration tales from java ee 5 to 7
Roberto Cortez
 
Angularjs practical project experiences with javascript development in a bank
David Amend
 
Performance monitoring measurement angualrjs single page apps with phantomas
David Amend
 
Advanced AngularJS Tips and Tricks
Jeremy Likness
 
Story about module management with angular.js
David Amend
 
Grunt.js and Yeoman, Continous Integration
David Amend
 
Javascript & Angular .js for the enterprise, lessons learned, typescript scal...
David Amend
 
Gwt presentation
철민 배
 
lA educacion-socialista
Daniel Scienfan
 
How do you spell relief???
Chuck43
 
Mateo Quintero
Mateoqintero
 
Renovatie aluminium
Sven Torfs
 
Sermon 1 John 5:8-21
CrossPointBible
 
EVANGELISTIC PROCESS FOR THE LOCAL CHURCH -TR-15
Jordan Jordanidis
 
Reasons to migrate to modern web development with JavaScript
David Amend
 
Gwt widget frameworks_presentation
David Amend
 
Geecon 2014 - Five Ways to Not Suck at Being a Java Freelancer
Roberto Cortez
 
Furniture industry in India
Yogesh Gokule
 
Typescript - a JS superset
Tyrone Allen
 
Maven - Taming the Beast
Roberto Cortez
 
Migration tales from java ee 5 to 7
Roberto Cortez
 
Ad

Similar to Angular 2 : learn TypeScript already with Angular 1 (20)

PPTX
The advantage of developing with TypeScript
Corley S.r.l.
 
PPTX
AngularConf2015
Alessandro Giorgetti
 
PDF
Introduction to TypeScript
NexThoughts Technologies
 
PDF
TypeScript for Java Developers
Yakov Fain
 
PPTX
TypeScript intro
Ats Uiboupin
 
PPTX
TypeScript Introduction
Thanh Tai
 
PPTX
Angular2 for Beginners
Oswald Campesato
 
PPTX
TypeScript . the JavaScript developer best friend!
Alessandro Giorgetti
 
PDF
Before you jump into Angular
M A Hossain Tonu
 
PDF
Power Leveling your TypeScript
Offirmo
 
PPTX
Angular2
Oswald Campesato
 
PDF
TypeScript: coding JavaScript without the pain
Sander Mak (@Sander_Mak)
 
PDF
Angular 2
Suresh Kumar
 
PDF
Large Scale JavaScript with TypeScript
Oliver Zeigermann
 
PPTX
TypeScript: Basic Features and Compilation Guide
Nascenia IT
 
PPTX
Typescript in 30mins
Udaya Kumar
 
PDF
Getting Started with the TypeScript Language
Gil Fink
 
PDF
TypeScript introduction to scalable javascript application
Andrea Paciolla
 
PPTX
Complete Notes on Angular 2 and TypeScript
EPAM Systems
 
PDF
TypeScipt - Get Started
Krishnanand Sivaraj
 
The advantage of developing with TypeScript
Corley S.r.l.
 
AngularConf2015
Alessandro Giorgetti
 
Introduction to TypeScript
NexThoughts Technologies
 
TypeScript for Java Developers
Yakov Fain
 
TypeScript intro
Ats Uiboupin
 
TypeScript Introduction
Thanh Tai
 
Angular2 for Beginners
Oswald Campesato
 
TypeScript . the JavaScript developer best friend!
Alessandro Giorgetti
 
Before you jump into Angular
M A Hossain Tonu
 
Power Leveling your TypeScript
Offirmo
 
TypeScript: coding JavaScript without the pain
Sander Mak (@Sander_Mak)
 
Angular 2
Suresh Kumar
 
Large Scale JavaScript with TypeScript
Oliver Zeigermann
 
TypeScript: Basic Features and Compilation Guide
Nascenia IT
 
Typescript in 30mins
Udaya Kumar
 
Getting Started with the TypeScript Language
Gil Fink
 
TypeScript introduction to scalable javascript application
Andrea Paciolla
 
Complete Notes on Angular 2 and TypeScript
EPAM Systems
 
TypeScipt - Get Started
Krishnanand Sivaraj
 

More from David Amend (6)

PDF
Componentization css angular
David Amend
 
PDF
Thin Server Architecture SPA, 5 years old presentation
David Amend
 
PDF
Grunt Advanced Vol 2, Plugins Text I/O with fun
David Amend
 
PDF
Client Vs. Server Rendering
David Amend
 
PDF
Client vs Server Templating: Speed up initial load for SPA with Angular as an...
David Amend
 
PDF
Grunt js for the Enterprise Vol.1: Frontend Performance with Phantomas
David Amend
 
Componentization css angular
David Amend
 
Thin Server Architecture SPA, 5 years old presentation
David Amend
 
Grunt Advanced Vol 2, Plugins Text I/O with fun
David Amend
 
Client Vs. Server Rendering
David Amend
 
Client vs Server Templating: Speed up initial load for SPA with Angular as an...
David Amend
 
Grunt js for the Enterprise Vol.1: Frontend Performance with Phantomas
David Amend
 

Recently uploaded (20)

PPTX
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
PDF
Building High-Performance Oracle Teams: Strategic Staffing for Database Manag...
SMACT Works
 
PDF
Orbitly Pitch Deck|A Mission-Driven Platform for Side Project Collaboration (...
zz41354899
 
PDF
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
PDF
DevOps & Developer Experience Summer BBQ
AUGNYC
 
PPTX
How to Build a Scalable Micro-Investing Platform in 2025 - A Founder’s Guide ...
Third Rock Techkno
 
PDF
Security features in Dell, HP, and Lenovo PC systems: A research-based compar...
Principled Technologies
 
PPTX
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
PDF
Event Presentation Google Cloud Next Extended 2025
minhtrietgect
 
PDF
Advances in Ultra High Voltage (UHV) Transmission and Distribution Systems.pdf
Nabajyoti Banik
 
PPTX
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
PPTX
Smart Infrastructure and Automation through IoT Sensors
Rejig Digital
 
PDF
How-Cloud-Computing-Impacts-Businesses-in-2025-and-Beyond.pdf
Artjoker Software Development Company
 
PDF
Accelerating Oracle Database 23ai Troubleshooting with Oracle AHF Fleet Insig...
Sandesh Rao
 
PDF
Why Your AI & Cybersecurity Hiring Still Misses the Mark in 2025
Virtual Employee Pvt. Ltd.
 
PDF
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
PDF
Google’s NotebookLM Unveils Video Overviews
SOFTTECHHUB
 
PDF
Chapter 2 Digital Image Fundamentals.pdf
Getnet Tigabie Askale -(GM)
 
PDF
Cloud-Migration-Best-Practices-A-Practical-Guide-to-AWS-Azure-and-Google-Clou...
Artjoker Software Development Company
 
DOCX
Top AI API Alternatives to OpenAI: A Side-by-Side Breakdown
vilush
 
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
Building High-Performance Oracle Teams: Strategic Staffing for Database Manag...
SMACT Works
 
Orbitly Pitch Deck|A Mission-Driven Platform for Side Project Collaboration (...
zz41354899
 
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
DevOps & Developer Experience Summer BBQ
AUGNYC
 
How to Build a Scalable Micro-Investing Platform in 2025 - A Founder’s Guide ...
Third Rock Techkno
 
Security features in Dell, HP, and Lenovo PC systems: A research-based compar...
Principled Technologies
 
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
Event Presentation Google Cloud Next Extended 2025
minhtrietgect
 
Advances in Ultra High Voltage (UHV) Transmission and Distribution Systems.pdf
Nabajyoti Banik
 
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
Smart Infrastructure and Automation through IoT Sensors
Rejig Digital
 
How-Cloud-Computing-Impacts-Businesses-in-2025-and-Beyond.pdf
Artjoker Software Development Company
 
Accelerating Oracle Database 23ai Troubleshooting with Oracle AHF Fleet Insig...
Sandesh Rao
 
Why Your AI & Cybersecurity Hiring Still Misses the Mark in 2025
Virtual Employee Pvt. Ltd.
 
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
Google’s NotebookLM Unveils Video Overviews
SOFTTECHHUB
 
Chapter 2 Digital Image Fundamentals.pdf
Getnet Tigabie Askale -(GM)
 
Cloud-Migration-Best-Practices-A-Practical-Guide-to-AWS-Azure-and-Google-Clou...
Artjoker Software Development Company
 
Top AI API Alternatives to OpenAI: A Side-by-Side Breakdown
vilush
 

Angular 2 : learn TypeScript already with Angular 1