SlideShare uma empresa Scribd logo
Codelab: TypeScript
GDG Feira de Santana
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
Codelab: TypeScript
Por quê?
● HTML5
● CSS3
● ES6
● Aplicações de larga escala
● OOP
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
Requisitos
● Node e npm
● npm install -g typescript
● Visual Studio Code ou Atom + atom-typescript
● tsc --init
Tipos básico
var 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'];
Tipos básico
var something: any;
something=2016;
something='LordOfTheRings'
var itens: Array<string>;
Tipos básico
enum 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
Type Annotations
reset(): void{
points=0;
}
sum(arg1: number, arg2: number): number{
return arg1+arg2;
}
Type Annotations
function sayHello(name: string=' World',greeting?: string): string {
if (!greeting) {
greeting = 'Hello';
}
return greeting+', ' + name;
}
Type Annotations
function greetPeople(greeting: string, ...names: string[]): string {
return greeting + ', ' + names.join(' and ') + '!';
}
Mais exemplos...
● accumulator.ts
● hello.ts
● utils.ts
● point.ts
● point3d.ts
● server.ts
● helloserver.ts
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

Mais conteúdo relacionado

ODP
Introdução JavaScript e DOM
PPTX
Node.js
PDF
[Testes] frameworks de testes end to-end baseados em node js
PPTX
Curso de Node.js e MongoDB - 02
PDF
Introdução JavaScript e DOM 2016
PPTX
Curso de Node.js e MongoDB - 04
PDF
Node.js: 5 razões para começar a utilizar
PPT
Javascript nos dias de hoje
Introdução JavaScript e DOM
Node.js
[Testes] frameworks de testes end to-end baseados em node js
Curso de Node.js e MongoDB - 02
Introdução JavaScript e DOM 2016
Curso de Node.js e MongoDB - 04
Node.js: 5 razões para começar a utilizar
Javascript nos dias de hoje

Mais procurados (19)

PDF
Introdução ao Ruby on Rails
PPT
Nodejs justdigital
PPTX
Node.js - Devo adotar na minha empresa?
PDF
Visao geralti netshoes03
PDF
Visao geralti netshoes03
PDF
Primeiros passos com protractor - GUTS-SC
PDF
Por que Node JS?
PDF
Node.js for Noobs
PPTX
Curso de Node.js e MongoDB - 01
PDF
Node js - O poder do JavaScript do lado do servidor
PPTX
MongoDB: Prós, Contras e Showcases.
ODP
Conhecendo o Nodejs
PPTX
Introdução ao NodeJS
PDF
Conhecendo mundo Node.js
PDF
Groovy stack
PPTX
Jclouds jug vale
PDF
Precisamos falar sobre MERN stack
PPTX
Introdução à Node.js + MongoDB
Introdução ao Ruby on Rails
Nodejs justdigital
Node.js - Devo adotar na minha empresa?
Visao geralti netshoes03
Visao geralti netshoes03
Primeiros passos com protractor - GUTS-SC
Por que Node JS?
Node.js for Noobs
Curso de Node.js e MongoDB - 01
Node js - O poder do JavaScript do lado do servidor
MongoDB: Prós, Contras e Showcases.
Conhecendo o Nodejs
Introdução ao NodeJS
Conhecendo mundo Node.js
Groovy stack
Jclouds jug vale
Precisamos falar sobre MERN stack
Introdução à Node.js + MongoDB
Anúncio

Semelhante a Codelab: TypeScript (20)

PDF
JavaScript Firme: Módulos com RequireJS e BDD com Jasmine
PDF
JavaScript: uma visão geral da linguagem e seu ecossistema
PDF
Impressão 3D Livre
PDF
graoJS - A full stack MVC NodeJS framework
PDF
Palestra Java 8 - V Boot
PDF
TDC2016SP - Trilha Linux Embarcado
PDF
TDC2016 - Processamento de Imagem em GPU com OpenGL
PDF
Secomp 2018 - DO Ruby ao Elixir
PDF
Open4Education | MC59 - Aprendendo a programar de forma divertida e eficiente...
PDF
Spring boot
PDF
Apache Wicket derruba o padrão JSF
PDF
Mini Curso Android basico EATI-2017
PDF
Node.JS - Workshop do básico ao avançado
PDF
Como usar IA para melhorar a qualidade do seu código
PDF
Cornucópia – um agile game para facilitar a codificação segura - Agile Trends...
PDF
nodeLHC #secomp2016
PDF
It skills para rh aprender e contratar
PDF
Engenharia de Software para Jogos
PDF
Raspagem de Dados com Python
PPTX
Desenvolvendo Aplicações de Uso Geral para GPU com CUDA
JavaScript Firme: Módulos com RequireJS e BDD com Jasmine
JavaScript: uma visão geral da linguagem e seu ecossistema
Impressão 3D Livre
graoJS - A full stack MVC NodeJS framework
Palestra Java 8 - V Boot
TDC2016SP - Trilha Linux Embarcado
TDC2016 - Processamento de Imagem em GPU com OpenGL
Secomp 2018 - DO Ruby ao Elixir
Open4Education | MC59 - Aprendendo a programar de forma divertida e eficiente...
Spring boot
Apache Wicket derruba o padrão JSF
Mini Curso Android basico EATI-2017
Node.JS - Workshop do básico ao avançado
Como usar IA para melhorar a qualidade do seu código
Cornucópia – um agile game para facilitar a codificação segura - Agile Trends...
nodeLHC #secomp2016
It skills para rh aprender e contratar
Engenharia de Software para Jogos
Raspagem de Dados com Python
Desenvolvendo Aplicações de Uso Geral para GPU com CUDA
Anúncio

Mais de Romualdo Andre (18)

PDF
Web, híbrido, cross compiled ou nativo: qual escolher?
PDF
Python Class
PPTX
Dúvidas e respostas sobre carreira de TI: serviço público
PDF
Tendências 2018
PPTX
Iniciando com javaScript 2017
PPTX
Codelab HTML e CSS
PPTX
Império JavaScript
PPTX
Angular 2 Básico
PDF
Facilite a vida com guava
ODP
Web, híbrido, cross compiled ou nativo: qual escolher?
ODP
Android Studio: Primeiros Passos
ODP
Corrigindo o vestibular com Python e OpenCV
ODP
O programador e o super carro
ODP
Identificação de grupos de estudantes no Prosel usando Mapas de Kohonen
ODP
Exercício 2: Aplicações de Algoritmos Evolutivos
ODP
Uso de redes neurais na classificação de frutas
ODP
Introdução ao JavaScript e DOM
ODP
Introdução ao XML
Web, híbrido, cross compiled ou nativo: qual escolher?
Python Class
Dúvidas e respostas sobre carreira de TI: serviço público
Tendências 2018
Iniciando com javaScript 2017
Codelab HTML e CSS
Império JavaScript
Angular 2 Básico
Facilite a vida com guava
Web, híbrido, cross compiled ou nativo: qual escolher?
Android Studio: Primeiros Passos
Corrigindo o vestibular com Python e OpenCV
O programador e o super carro
Identificação de grupos de estudantes no Prosel usando Mapas de Kohonen
Exercício 2: Aplicações de Algoritmos Evolutivos
Uso de redes neurais na classificação de frutas
Introdução ao JavaScript e DOM
Introdução ao XML

Último (19)

PDF
Processos na gestão de transportes, TM100 Col18
PDF
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
PDF
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
PPTX
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
PDF
Aula04-Academia Heri- Tecnologia Geral 2025
PPTX
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
PPTX
Aula 18 - Manipulacao De Arquivos python
PDF
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
PPTX
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
PPTX
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
PPTX
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
PDF
Apple Pippin Uma breve introdução. - David Glotz
PDF
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
PDF
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
PDF
COBITxITIL-Entenda as diferença em uso governança TI
PPTX
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss
PDF
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
PDF
Custos e liquidação no SAP Transportation Management, TM130 Col18
PDF
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
Processos na gestão de transportes, TM100 Col18
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
Aula04-Academia Heri- Tecnologia Geral 2025
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
Aula 18 - Manipulacao De Arquivos python
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
Apple Pippin Uma breve introdução. - David Glotz
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
COBITxITIL-Entenda as diferença em uso governança TI
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
Custos e liquidação no SAP Transportation Management, TM130 Col18
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14

Codelab: TypeScript