Angular 9 — Características e atualização de projetos

Kheronn K. Machado
3 min readFeb 10, 2020

A versão 9 do Angular já está disponível e com ela, várias atualizações e correções de melhorias e performances em todo ecossistema Angular.

A mais significativa é sem dúvida o Ivy, nome do novo compilador e renderizador do framework.

Ivy

Embora já disponível na versão anterior, a construção dos projetos agora tem Ivy como compilador padrão. Entre os recursos destacam-se:

  • Pacotes menores;
  • Execução de testes mais rápidos;
  • Melhorias na checagem de tipos de erros, classes css, erros de contrução e internacionalização;
  • AOT habilitado por padrão.

De acordo com o anúncio oficial, o compilador Ivy foi projetado para gerar menos código na construção dos componentes.

O impacto dessa característica é mais significativo no tamanho da aplicação em pequenas e grandes aplicações.

Fonte: blog.angular.io/version-9-of-angular-now-available-project-ivy-has-arrived-23c97b63cfa3

Verificação de tipos

O compilador pode verificar os tipos no momento da codificação, o que ajuda a detectar erros no momento de desenvolvimento (IDE).

São dois atributos:

fullTemplateTypeCheck — Quando ativado, o complicador verifica no template do componente (ngIf, ngFor, ng-template …)

strictTemplates — Quando ativado, o compilador consegue em tempo de desenvolvimento, por exemplo, verificar se uma entrada corresponde ao tipo determinado na classe.

Mais detalhes em: https://angular.io/guide/template-typecheck

AOT padrão

Outra ponto interessante da nova versão é a performance. As melhorias com AOT habilitado por default, até mesmo com `ng serve`, trouxe uma redução significativa no tamanho e velocidade. Aplicados no próprio site da documentação (angular.io) a melhoria foi próxima de 40%.

Migrando os projetos

O primeiro passo é atualizar tanto o CLI e o core para última versão do 8. No terminal informe:

ng update @angular/cli8 @angular/core8

Depois, atualizamos para o 9:

ng update @angular/cli @angular/core

Prontinho!!!

Não custa lembrar que é sempre recomendado manter os projetos nas últimas versões, sejam por questões de performance e melhorias ou por correções de segurança. Além do impacto de uma versão para outra não causar tantas break changes.

Uma observação. Para quem utiliza componentes do PrimeNG, atualizei a lib para 9.0.0-rc.4, que é compatível com a versão 9 do Angular. Tive problemas com a importações dos módulos, que trocaram de nome.

Além de alguns atributos que foram removidos ou depreciados.

Finalizando

Um site indicado é o update.agular.io, que traz em detalhes informações para orientar a atualização, inclusive com possibilidades, de mostrar o impacto da migração, com base na versão que se encontra o projeto.

Finalmente, para mais detalhes, também recomendo o site: https://v9.angular.io/guide/updating-to-version-9

Até +

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

Kheronn K. Machado
Kheronn K. Machado

Written by Kheronn K. Machado

Professor, pesquisador e desenvolvedor.

Responses (1)

Write a response