Angular 7.0 – O que há de novo em seu novo Avatar?
Publicados: 2018-12-29A força de um edifício está em seus pilares de concreto. Assim é a estrutura para um aplicativo da web. Uma estrutura de software fornece uma maneira padrão de projetar, construir e implantar aplicativos. Em um mundo de plataformas Java, o framework Javascript foi o chavão mais falado até que o Angular ganhou importância.
Agora, vamos ver alguns recursos salientes do Angular.
- Angular é uma estrutura Javascript de código aberto que se transformou no que é chamado de 'Typescript' agora.
- A geração e o desenvolvimento de código são rápidos em comparação com um código JS (Javascript).
- O prompt de linha de comando (CLI) possui comandos para criar aplicativos mais rapidamente.
- O código está bem organizado, pois usa componentes, portanto, melhora a produtividade
- Uma diretiva é uma função dinâmica que manipula variáveis, instruções if e loops em HTML
- Angular é multiplataforma, portanto, é independente do navegador e do sistema operacional
- Angular CLI vem com ferramentas de teste que são úteis para testes de unidade
Aprenda cursos de engenharia de software online das melhores universidades do mundo. Ganhe Programas PG Executivos, Programas de Certificado Avançado ou Programas de Mestrado para acelerar sua carreira.

Índice
AngularJS – Um precursor do Angular
O AngularJS foi o primeiro produto da série Angular introduzido pelo Google em 2009. É um framework do lado do cliente ou front-end. O que isso significa é que o código é executado no navegador do usuário e não no servidor web. AngularJS foi escrito puramente em Javascript. Isso foi desenvolvido para desacoplar a lógica do aplicativo, no entanto, foi o único caminho bastante bem-sucedido e pavimentado para o Angular com seu atual avatar 7.0.
O AngularJS é a escolha certa para o seu próximo desenvolvimento de aplicativos móveis?
Estrutura Angular 7.0
Vamos entender brevemente os blocos de construção do Angular:
- Módulo : Basicamente divide as telas principais do aplicativo logicamente. Por exemplo, se houver uma página de carrinho de compras, pode-se querer ter um módulo de carrinho de compras.
- Componente : Esta é uma seção da interface do usuário e é uma 'classe' como na programação orientada a objetos. Este é o bloco de construção fundamental da interface do usuário (UI). A classe de componente contém a lógica principal da página.
Os componentes são compostos por:- Modelo : Um modelo é escrito em HTML ou podem ser arquivos HTML. Ele pode ter propriedades dinâmicas como variáveis e o uso de 'se condições' é possível com diretivas.
- Classe : É o código para o aplicativo. O código é escrito em Typescript. Typescript é um superconjunto de Javascript. Typescript é uma linguagem de tipo 'estático' onde as variáveis são declaradas com tipos definidos. Portanto, os erros são detectados na compilação do programa, em vez de serem detectados em tempo de execução. Classes angulares também podem ser escritas em Javascript. Os componentes têm propriedades e métodos de dados.
- Metadados : Para identificar que a classe é um componente Angular utiliza-se Metadados. Os metadados podem ser anexados ao Typescript usando uma declaração de decorador.
Vamos percorrer um componente simples em Angular.Importe {component} de ''@angular/core''; Aqui, o pacote de componentes é importado da biblioteca principal do Angular. @component ({ (esta é uma declaração de decorador) Selector : 'myapplication' …(.esta é a tag HTML personalizada que usamos para inserir o componente. ) Modelo: '<h1> Olá {(name)}</h1> (name é uma variável) }) export class AppComponent{ (Esta é a classe do componente e 'name' é uma propriedade na classe) nome = 'Quadro angular'; } <corpo> <myapplication>Carregando um componente de aplicativo de amostra aqui..</myapplication> </body>
- Ligação de dados : Um processo que permite a comunicação entre o componente e a visualização. Assim, os dados são passados do componente para a visualização e vice-versa. Existem quatro tipos de vinculação de dados. Na interpolação e vinculação de propriedades, os dados são enviados do componente para a exibição e na vinculação de eventos, os dados são enviados para o componente da exibição ou do modelo. Na ligação bidirecional, os dados viajam nos dois sentidos.
- Service : Esta é uma classe que é escrita para código reutilizável, ou seja, código que pode ser acessado de vários componentes. Essas classes enviam dados e funcionalidades entre componentes. As classes de serviço também podem obter dados de um banco de dados ou de um arquivo js/JSON. Quando se usa uma classe Service, o código parece organizado e fragmentado.
- Diretiva : Personalizar atributos HTML para estender o poder do HTML é uma diretiva. ngIf, ngFor, ngModel são diretivas. O ngModel é responsável por vincular a exibição ao modelo, que outras diretivas, como input, textarea ou Select, exigem.
Aqui está um pedaço de código que mostra como o ngmodel funciona.<div ng-app="" ng-init="firstName='John'"> <p>Digite um nome na caixa de entrada:</p> <p>Nome: <input type="text" ng-model="firstName"></p> <p>Você escreveu: {{ firstName }}</p> </div>
Assim, firstName foi inicializado com 'John' e quando alguém inserir um novo valor na caixa de texto, firstName manterá o novo nome inserido.
- Injeção de dependência (DI) : as classes precisam de objetos para executar uma função específica. Em vez de criar os objetos cada vez na classe, a classe recebe os objetos (dependências) de fontes externas. Na estrutura de DI, seguem as etapas que precisam ser seguidas:
- Crie uma classe de serviço, por exemplo. Dados do funcionário
- Registre esta classe de serviço com o Injetor. Um Injetor é um contêiner que contém todas as classes de dependência
- Declare a classe Employeedata como uma dependência na classe que precisa, por exemplo. Classe EmployeeList
Versões do Angular
Depois do AngularJS, foi lançado o Angular 2, que foi uma reescrita completa do AngularJS. Componentes foram adicionados do Angular 2. Angular 2 não era compatível com versões anteriores. O Angular é composto por vários pacotes e o pacote do roteador no Angular 3 não estava sincronizado. Assim, a equipe do Angular mudou para o Angular 4, que foi lançado com todas as correções e recursos com compatibilidade com versões anteriores do Angular 2. Posteriormente, o Angular 5, o Angular 6 foi lançado e a versão mais recente agora é o Angular 7 .

O que há de novo no Angular 7.0?
- Prompts da CLI : Uma alteração no prompt da linha de comando Angular é que a CLI solicita ao usuário que selecione os recursos enquanto executa os comandos comuns. Recursos como roteamento angular ou o formato da folha de estilo e muitos outros podem ser selecionados pelo usuário. Nas versões anteriores do Angular era preciso lembrar e digitar as opções no prompt.
- Desempenho do aplicativo :
- Erros comuns:
Nesta versão, a equipe angular analisou e removeu alguns erros comuns cometidos pelos desenvolvedores, como o polyfill 'reflect-metadata' que foi incluído na produção, o que na verdade é necessário apenas no desenvolvimento. - Orçamentos-Pacote:
Para melhorar o desempenho do aplicativo, os orçamentos de pacote padrão são definidos em angular.JSON. Os desenvolvedores agora serão avisados se o tamanho do pacote de aplicativos exceder o limite de 5 MB e quando o pacote inicial exceder 2 MB. Esses valores podem ser modificados no arquivo JSON conforme necessário.
- Erros comuns:
- Angular Material e o CDK: O kit de desenvolvimento de componentes Angular (CDK) foi criado a partir do Angular Material (UI para bibliotecas). Os dois novos recursos adicionados no CDK são
- Rolagem virtual:
Para carregar apenas a parte visível na tela, o pacote <cdk-virtual-scroll-viewport> fornece auxiliares para diretivas que reagem a eventos de rolagem. Assim, ele renderizará apenas os itens que podem caber na tela. Quando um usuário percorre a lista, o DOM carrega e descarrega os elementos dinamicamente com base no tamanho da exibição. - Suporte para arrastar e soltar:
O módulo @angular/cdk/drag-drop ajuda a liberar o recurso de arrastar e soltar de um elemento, reordenar itens em uma lista, mover itens em uma lista e assim por diante. Isso é feito com a ajuda das diretivas cdkDropList e cdkDrag.
- Rolagem virtual:
- Angular 7.0 atualizou suas dependências para suportar Typescript 3.1, RxJS 6.3 e Node 10 .
- Acessibilidade aprimorada de Selects: O 'select' nativo tem algumas vantagens de desempenho, acessibilidade e usabilidade, portanto, usar um elemento select nativo dentro de um 'mat-form-field' é um novo recurso no Angular 7.0.
- Elementos angulares: uma pequena mudança, mas nova no Angular 7
“ O Angular Elements agora oferece suporte à projeção de conteúdo usando padrões da Web para elementos personalizados .” — Isso é o que Stephen Fluin, Angular diz. - Trabalhando com parceiros: A equipe do Angular tem trabalhado em parceria com projetos comunitários que foram lançados recentemente, um deles é o Angular Console. Angular Console é uma interface de usuário para Angular CLI. É bom para iniciantes e especialistas, pois é muito mais fácil do que os prompts. Existem diferentes versões de interface do usuário para Windows e Mac OS .
A maioria das mudanças no Angular 7.0 está em melhorias de desempenho e correção de bugs. Portanto, é a versão mais segura até o momento e a migração de versões anteriores é simples. Ivy é o novo mecanismo de renderização em que a equipe Angular está trabalhando. Até lá, esperemos e observemos. Continue aprendendo !
Se você estiver interessado em aprender mais sobre desenvolvimento de software full stack, confira o Executive PG Program in Software Development – Specialization in Full Stack Development do upGrad & IIIT-B, que é projetado para profissionais que trabalham e oferece mais de 500 horas de treinamento rigoroso, 9+ projetos e atribuições, status de ex-alunos do IIIT-B, projetos práticos práticos e assistência de trabalho com as principais empresas.