Novidades do TypeScript
Microsoft (MVP)
Thiago da Silva Adriano
Arquiteto de Software na TV Band
Autor Técnico e Palestrante
Organizador dos meetups
/perfil/thiagoadriano
programadrianotadriano.net
programadriano programadriano
Contatos
Blogs
Contatos
Agenda
▸ Angular 8
▸ TypeScript 3.4
▸ Incremental flag
▸ Converted name parameters
▸ ReadOnly {Array/Tuplas}
▸ Const assertions
▸ GlobalThis
Ivy (novo render)
preview
Em um novo projeto
Em um projeto com Angular 8
● melhora no tempo dos builds (utilizando o
incremental compilation)
● diminuindo o tamanho dos bundles (com tree-
shaking)
● Mais velocidade e facilidade no momento de
desenvolvimento e debug
Com foco em:
● 1.64s -> 1.52s (Sem o AOT)
● 1.17s (Com AOT)
Com Ivy:
Differential Loading by Default
https://github.com/browserslist/browserslist
Fonte: https://v8.angular.io/guide/deployment#differential-loading
+40KB
Route Configurations use Dynamic Imports
{
path: '/admin',
loadChildren: './admin/admin.module#AdminModule'
}
Rotas com Lazy loading
{
path: `/admin`, loadChildren: () =>
import(`./admin/admin.module`).then(m => m.AdminModule)
}
Dynamic Imports
Suporte ao Typescript 3.4
Incremental flag
tsc -w -diagnostics
tsconfig.tsbuildinfo
readonly {Array/tuplas}
ReadonlyArray<T>
ReadonlyArray<T>
Readonly
Readonly com tuplas
Tem algum caso de uso?
https://www.npmjs.com/package/json2csv
json2csv
converted ‘named ‘parameters
Refactoring
const assertions
y = 10; Vai dar ruim ou não ?
● object get readonly properties
● array become readonly tuples
const assertions
https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-4.html
globalThis
Escopo Global no JavaScript
● Window
● self
● frames globalThis
https://github.com/programadriano/ng8-ts3.4
Novidades do TypeScript
Novidades do TypeScript

Novidades do TypeScript