SlideShare a Scribd company logo
Co nowego w TypeScript
i dlaczego go nie używasz?
Michał Michalczuk
.Net Developer |
?
Zmiany podano do stołu
TypeScript 1.4 TypeScript 1.7
Poprzednie podejście - v. 1.4
Ręczne linkowanie
referencji dla kompilatora
bardziej alias niż import
Poprzednie podejście - v. 1.4
Import. Dosyć Python
Brak ręcznego deklarowania referencji
Konfiguracja projektu
tsconfig.json
{
"compilerOptions": {...},
"filesGlob": [...],
"files": [...],
"atom": {
"rewriteTsconfig": true
}
}
[show example]
Kompilacja
ECMAScript 5
ECMAScript 6
"target": "es5",
[show example]
Kompilacja
AMD
CommonJS
"module": "commonjs",
Zarządzanie modułami
Module
Namespace
require vs module
require.js
Typings
Definetely Typed
tsd
Typings
Typings fragment Q.d.ts
Typings {
"version": "v4",
"repo": "borisyankov/DefinitelyTyped",
"ref": "master",
"path": "typings",
"bundle": "typings/tsd.d.ts",
"installed": {
"node/node.d.ts": {
"commit": "6a6ad7068..."
},
"mocha/mocha.d.ts": {
"commit": "e57df787f..."
},
…
}
[show example]
Typings
/// <reference path="chai/chai.d.ts" />
/// <reference path="express/express.d.ts" />
/// <reference path="mime/mime.d.ts" />
Jeden plik … w końcu automatycznie
[show example]
Nowe formy
Nowy syntax
Nowe elementy
Obiektowo tak bardzo
Nowe formy | Klasy abstrakcyjne
Wait .. what?
[show example]
Nowe formy | Annotacje
Gdzieś już to
widziałem...
@Component({
selector: 'tabs'
})
export class Tabs {
...
}
@View({
template: `
<ul>
<li>Tab 1</li>
<li>Tab 2</li>
</ul>’
})
Nowe formy | Annotacje
Nowe formy | Dekoratory
[show example]
Nie tak dawno temu był sobie adapter do klienta redis-a...
Stare formy | Wiele konstruktorów
Nowe formy | Promises
Tak, od 1.7
Ale inaczej
Nowe formy | Promises
Async / Await === new Promise(...)
[show example]
Nowe formy | Class expressions
[show example]
Wsparcie narzędzi | IDE i edytory
WebStorm
Atom + Atom-Typescript
Visual Studio
Visual Studio Code
Wsparcie narzędzi | Budowanie
gulp-typescript
gulp-tsd
gulp-tslint
odpowiedniki w grunt
wiele paczek na yeoman ma wybór
Wsparcie narzędzi | Budowanie
❤ gulp-typescript
Wsparcie narzędzi | Typings in JS
❤ WebStorm
Fakty i mity | Tylko .net
nie tylko .net developers friendly
Fakty i mity | Albo TS albo nic
Migruj się
stopniowo
[show example]
Słowem podsumowania
Pytania?
michalczukm

More Related Content

What's hot

CDI Portable Extensions
CDI Portable ExtensionsCDI Portable Extensions
CDI Portable Extensions
Adam Warski
 
Wersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITa
Wersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITaWersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITa
Wersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITa
marekmisztal
 
Xdebug – debugowanie i profilowanie aplikacji PHP
Xdebug – debugowanie i profilowanie aplikacji PHPXdebug – debugowanie i profilowanie aplikacji PHP
Xdebug – debugowanie i profilowanie aplikacji PHP
3camp
 
Debugowanie skryptow php za pomoca xdebug
Debugowanie skryptow php za pomoca xdebugDebugowanie skryptow php za pomoca xdebug
Debugowanie skryptow php za pomoca xdebug
XSolve
 
Websockety w PHP
Websockety w PHPWebsockety w PHP
Websockety w PHP
The Software House
 

What's hot (6)

CDI Portable Extensions
CDI Portable ExtensionsCDI Portable Extensions
CDI Portable Extensions
 
Wersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITa
Wersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITaWersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITa
Wersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITa
 
5 asp 0d
5 asp 0d5 asp 0d
5 asp 0d
 
Xdebug – debugowanie i profilowanie aplikacji PHP
Xdebug – debugowanie i profilowanie aplikacji PHPXdebug – debugowanie i profilowanie aplikacji PHP
Xdebug – debugowanie i profilowanie aplikacji PHP
 
Debugowanie skryptow php za pomoca xdebug
Debugowanie skryptow php za pomoca xdebugDebugowanie skryptow php za pomoca xdebug
Debugowanie skryptow php za pomoca xdebug
 
Websockety w PHP
Websockety w PHPWebsockety w PHP
Websockety w PHP
 

Similar to Meet.js 2016/02/01 - What's new in Typescript

Programowanie Komponentowe: #5 Wprowadzenie do środowiska .NET
Programowanie Komponentowe: #5 Wprowadzenie do środowiska .NETProgramowanie Komponentowe: #5 Wprowadzenie do środowiska .NET
Programowanie Komponentowe: #5 Wprowadzenie do środowiska .NETMikołaj Olszewski
 
Jak podwoić wartość kodu .NET?
Jak podwoić wartość kodu .NET?Jak podwoić wartość kodu .NET?
Jak podwoić wartość kodu .NET?
javOnet
 
Tomasz Kopacz MTS 2012 Wind RT w Windows 8 i tzw aplikacje lob (line of busin...
Tomasz Kopacz MTS 2012 Wind RT w Windows 8 i tzw aplikacje lob (line of busin...Tomasz Kopacz MTS 2012 Wind RT w Windows 8 i tzw aplikacje lob (line of busin...
Tomasz Kopacz MTS 2012 Wind RT w Windows 8 i tzw aplikacje lob (line of busin...Tomasz Kopacz
 
Programowanie Komponentowe: #C Wprowadzenie do OSGi
Programowanie Komponentowe: #C Wprowadzenie do OSGiProgramowanie Komponentowe: #C Wprowadzenie do OSGi
Programowanie Komponentowe: #C Wprowadzenie do OSGiMikołaj Olszewski
 
Jak stworzyć udany system informatyczny
Jak stworzyć udany system informatycznyJak stworzyć udany system informatyczny
Jak stworzyć udany system informatyczny
qbeuek
 
Michał Dec - Quality in Clouds
Michał Dec - Quality in CloudsMichał Dec - Quality in Clouds
Michał Dec - Quality in Clouds
kraqa
 
Introduction to C#
Introduction to C#Introduction to C#
Introduction to C#
Vadym Melnyk
 
Kopiąc Trufle - Odkrywanie tajemnic najmniej zrozumiałego elementu GraalVM
Kopiąc Trufle - Odkrywanie tajemnic najmniej zrozumiałego elementu GraalVMKopiąc Trufle - Odkrywanie tajemnic najmniej zrozumiałego elementu GraalVM
Kopiąc Trufle - Odkrywanie tajemnic najmniej zrozumiałego elementu GraalVM
Artur Skowroński
 
Programowanie Komponentowe: #6 Wersjonowanie
Programowanie Komponentowe: #6 WersjonowanieProgramowanie Komponentowe: #6 Wersjonowanie
Programowanie Komponentowe: #6 WersjonowanieMikołaj Olszewski
 
Developing native-like Windows application using JavaScript, SSE, eZ Platform...
Developing native-like Windows application using JavaScript, SSE, eZ Platform...Developing native-like Windows application using JavaScript, SSE, eZ Platform...
Developing native-like Windows application using JavaScript, SSE, eZ Platform...
Piotr Nalepa
 
C# i .NET
C# i .NETC# i .NET
Produkcja aplikacji internetowych
Produkcja aplikacji internetowychProdukcja aplikacji internetowych
Produkcja aplikacji internetowych
Tomasz Borowski
 
Aplikacje internetowe (2010)
Aplikacje internetowe (2010)Aplikacje internetowe (2010)
Aplikacje internetowe (2010)
Adrian Kalbarczyk
 
Grok Artykul
Grok ArtykulGrok Artykul
Grok Artykul
Wojciech Lichota
 
JavaScript, Moduły
JavaScript, ModułyJavaScript, Moduły
JavaScript, Moduły
Mariusz Nowak
 
Automatyzacja utrzymania jakości w środowisku PHP
Automatyzacja utrzymania jakości w środowisku PHPAutomatyzacja utrzymania jakości w środowisku PHP
Automatyzacja utrzymania jakości w środowisku PHP
Laravel Poland MeetUp
 
Wprowadzenie Do Asp
Wprowadzenie Do AspWprowadzenie Do Asp
Wprowadzenie Do Asp
Kelut
 
Modularny JavaScript - meet.js
Modularny JavaScript - meet.jsModularny JavaScript - meet.js
Modularny JavaScript - meet.js
Patryk Jar
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
Marcin Daczkowski
 

Similar to Meet.js 2016/02/01 - What's new in Typescript (20)

Iron Python I Dlr
Iron Python I DlrIron Python I Dlr
Iron Python I Dlr
 
Programowanie Komponentowe: #5 Wprowadzenie do środowiska .NET
Programowanie Komponentowe: #5 Wprowadzenie do środowiska .NETProgramowanie Komponentowe: #5 Wprowadzenie do środowiska .NET
Programowanie Komponentowe: #5 Wprowadzenie do środowiska .NET
 
Jak podwoić wartość kodu .NET?
Jak podwoić wartość kodu .NET?Jak podwoić wartość kodu .NET?
Jak podwoić wartość kodu .NET?
 
Tomasz Kopacz MTS 2012 Wind RT w Windows 8 i tzw aplikacje lob (line of busin...
Tomasz Kopacz MTS 2012 Wind RT w Windows 8 i tzw aplikacje lob (line of busin...Tomasz Kopacz MTS 2012 Wind RT w Windows 8 i tzw aplikacje lob (line of busin...
Tomasz Kopacz MTS 2012 Wind RT w Windows 8 i tzw aplikacje lob (line of busin...
 
Programowanie Komponentowe: #C Wprowadzenie do OSGi
Programowanie Komponentowe: #C Wprowadzenie do OSGiProgramowanie Komponentowe: #C Wprowadzenie do OSGi
Programowanie Komponentowe: #C Wprowadzenie do OSGi
 
Jak stworzyć udany system informatyczny
Jak stworzyć udany system informatycznyJak stworzyć udany system informatyczny
Jak stworzyć udany system informatyczny
 
Michał Dec - Quality in Clouds
Michał Dec - Quality in CloudsMichał Dec - Quality in Clouds
Michał Dec - Quality in Clouds
 
Introduction to C#
Introduction to C#Introduction to C#
Introduction to C#
 
Kopiąc Trufle - Odkrywanie tajemnic najmniej zrozumiałego elementu GraalVM
Kopiąc Trufle - Odkrywanie tajemnic najmniej zrozumiałego elementu GraalVMKopiąc Trufle - Odkrywanie tajemnic najmniej zrozumiałego elementu GraalVM
Kopiąc Trufle - Odkrywanie tajemnic najmniej zrozumiałego elementu GraalVM
 
Programowanie Komponentowe: #6 Wersjonowanie
Programowanie Komponentowe: #6 WersjonowanieProgramowanie Komponentowe: #6 Wersjonowanie
Programowanie Komponentowe: #6 Wersjonowanie
 
Developing native-like Windows application using JavaScript, SSE, eZ Platform...
Developing native-like Windows application using JavaScript, SSE, eZ Platform...Developing native-like Windows application using JavaScript, SSE, eZ Platform...
Developing native-like Windows application using JavaScript, SSE, eZ Platform...
 
C# i .NET
C# i .NETC# i .NET
C# i .NET
 
Produkcja aplikacji internetowych
Produkcja aplikacji internetowychProdukcja aplikacji internetowych
Produkcja aplikacji internetowych
 
Aplikacje internetowe (2010)
Aplikacje internetowe (2010)Aplikacje internetowe (2010)
Aplikacje internetowe (2010)
 
Grok Artykul
Grok ArtykulGrok Artykul
Grok Artykul
 
JavaScript, Moduły
JavaScript, ModułyJavaScript, Moduły
JavaScript, Moduły
 
Automatyzacja utrzymania jakości w środowisku PHP
Automatyzacja utrzymania jakości w środowisku PHPAutomatyzacja utrzymania jakości w środowisku PHP
Automatyzacja utrzymania jakości w środowisku PHP
 
Wprowadzenie Do Asp
Wprowadzenie Do AspWprowadzenie Do Asp
Wprowadzenie Do Asp
 
Modularny JavaScript - meet.js
Modularny JavaScript - meet.jsModularny JavaScript - meet.js
Modularny JavaScript - meet.js
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
 

Meet.js 2016/02/01 - What's new in Typescript