Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Gitta Goldschmidt Geändert vor über 5 Jahren
1
TypeScript rocks?! 16. Mai 2017 Tuan Dang-Schulz
2
JS sucks?!
3
The Pain of JavaScript keine Typsicherheit
Objektorientierung schwierig für Ungeübte Keine gute IDE Unterstützung schwer wartbar bei großen Projekten Typos werden bestraft
4
Vorteile von TS gute und große IDE Unterstützung frühe Fehlererkennung
geeignet für große Anwendungen sicheres Refactoring
5
Sitemap Fakten und Aufbau Funktionsweise live coding
6
TypeScript ~2012 von Anders Hejlsberg/Microsoft veröffentlich
Version 2.3 (Stand Mai 2017) Open-Source (Apache-2.0) Platz 15 auf GitHub bekannteste Projekte Angular2 VS-Code TypeScript
7
Aufbau basiert auf Vorschlägen von ES6 statisches Typensystem
Var vs. let vs. const primitive Datentypen string, number, Date, Array, any Enum
8
OOP Klassen Interfaces Vererbung Generics Konstruktor Felder Methoden
private/public/protected Interfaces Vererbung Generics
9
Beispiel function Person(firstName) { this.firstName = firstName; } function Student(firstName, id) { Person.call(this, firstName); this.id = id; } Student.prototype = Object.create(Person.prototype); Student.prototype.constructor = Student; Student.prototype.partyHard = function () { return "PARTY"; } var student = new Student("Bob", 12); alert(student.firstName + ": " + student.id + " - " + student.partyHard()); class Person{ constructor(public firstName:string) { } } class Stundent extends Person{ constructor(firstName:string, public readonly id:string) { super(firstName); } partHard() { return "Party"; } } const student = new Stundent("Bob", "ID42"); alert(student.partHard() + " ID:" + student.id); Beispiel einer Klassen Defnition Links JS mit Prototypen
10
Async/Await async function doSomething() { try { let val = await getAPromise(); console.log(val); } catch(err) { console.log('Error: ', err.message); } } Lambda -> Arrow Functions in es6 -> this
11
Yield/Generator function* infinity() { let i = 0; while(true) { yield i++; } } var iterator = infinity(); interator.next(); Lambda -> Arrow Functions in es6 -> this
12
Anbindung externe Libs
npm Ökosystem nutzbar DefinitelyTyped (*.d.ts) npm install lodash npm install
13
Vielen Dank für Ihre Aufmerksamkeit
Ende Vielen Dank für Ihre Aufmerksamkeit
14
Quellen
15
Abstract So gut wie jeder Softwareentwickler hat bestimmt schon mal über JavaScript geflucht. Es ist nicht typsicher, zu dynamisch, zu fehleranfällig und vieles mehr. Für diese Probleme hat Microsoft TypeScript entwickelt. Eine Objekt orientierte Sprache die jeder C#-Entwickler schnell erlernen und sicher anwenden kann, aber auch JavaScript Entwickler können auf ihr erlerntes Wissen zurückgreifen. In dem Vortrag möchte ich euch einen Einblick in die Sprache geben und aufzeigen, was die Sprache so interessant macht.
16
Kontakt zu uns... Wir navigieren erfolgreich zum Ziel.
Tuan Dang-Schulz Software Developer Telefon
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.