codelab: typescript

15

Click here to load reader

Upload: romualdo-andre

Post on 15-Apr-2017

267 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Codelab: TypeScript

Codelab: TypeScript

GDG Feira de Santana

Page 2: Codelab: TypeScript

Por quê?● Pense na Web alguns anos atrás.● Sites dinâmicos: DHTML, JQuery, AJAX● Aplicação monolítica: problemas com escopo e carregamento de bibliotecas

Page 3: Codelab: TypeScript
Page 4: Codelab: TypeScript

Por quê?● HTML5● CSS3● ES6● Aplicações de larga escala● OOP

Page 5: Codelab: TypeScript
Page 6: Codelab: TypeScript

Características do TypeScript● Criado pela Microsoft● Todo JS é um TS válido: reaproveita seu código● Produtividade:

○ ferramentas○ tipagem estática○ análise de código

● Fácil para quem veio do C#, Java, C++, etc.● Utilizado pelo Google no Angular 2

Page 7: Codelab: TypeScript

Requisitos● Node e npm● npm install -g typescript● Visual Studio Code ou Atom + atom-typescript● tsc --init

Page 8: Codelab: TypeScript

Tipos básicovar players: number=11

var brand: string='Yamaha'

var message: string = `Today it's a happy day!

I just bought a new ${brand} sportbike`;

var isMarquezFasterThanRossi: boolean = false;

var brands: string[] = ['Yamaha', 'Honda', 'Ducati'];

Page 9: Codelab: TypeScript

Tipos básicovar something: any;

something=2016;

something='LordOfTheRings'

var itens: Array<string>;

Page 10: Codelab: TypeScript

Tipos básicoenum Brands { Honda, Yamaha, Suzuki, BMW, Ducati, Triumph};

enum JapaneseBrands { Honda = 1, Yamaha, Suzuki};

enum EuropeanBrands {BMW=10, Ducati=20, Trimph=30}

let sym1 = Symbol();let sym2 = Symbol("key"); // optional string key

Page 11: Codelab: TypeScript

Type Annotationsreset(): void{

points=0;

}

sum(arg1: number, arg2: number): number{

return arg1+arg2;

}

Page 12: Codelab: TypeScript

Type Annotationsfunction sayHello(name: string=' World',greeting?: string): string {

if (!greeting) {

greeting = 'Hello';

}

return greeting+', ' + name;

}

Page 13: Codelab: TypeScript

Type Annotationsfunction greetPeople(greeting: string, ...names: string[]): string {

return greeting + ', ' + names.join(' and ') + '!';

}

Page 14: Codelab: TypeScript

Mais exemplos...● accumulator.ts● hello.ts● utils.ts● point.ts● point3d.ts● server.ts● helloserver.ts

Page 15: Codelab: TypeScript

Saiba mais● www.typescriptlang.org● http://definitelytyped.org/● Build 2016: What’s new in TypeScript● Código dos exemplos:

https://github.com/romualdoandre/gdg-codelab-typescript