2. Curious about Angular frameworkâs latest
version? We have got all the big details
about Angular 7 right here!
Angular is undoubtedly one of the most
popular JavaScript frameworks used to
build web and mobile applications. It was
released by Google in 2010 and received a
warm acknowledgement from the
development community.
3. Till date, five stable versions of Angular
framework are released â Angular 1 (also
known as Angular JS), followed by Angular 2
and Angular 4 succeeded by Angular
frameworkâs version 5 and 6. The release of
Angular frameworkâs version 3 was skipped
by Google as there were some issues with
the modules.
4. The beta version of Angular 7 was released
earlier this year, in the month of August. Its
stable version is all set to be released this
month. So whatâs new in Angular 7? Letâs find
out.
The current stable version of Angular
framework, Angular 6, was the first major
release from Google this year. So, before
jumping to the details of Angular 7, letâs see
some of the new features that were introduced
in version 6.
5. Key features introduced in Angular 6
Angular 6 supports some solid features such
as Ivy Renderer, Bazel Compiler support,
TypeScript 2.7 support and more:
6. Ivy Renderer
The Angular team introduced their
3rd rendering engine called Ivy with the launch
of Angular 6. This feature augments the speed
and decreases the size of the app. Ivy is
basically designed to support backward
compatibility with existing renderers and
focuses on the speed of rendering
improvement.
7. Bazel Compiler
Angular 6 included the support for Bazel
Compiler. It is basically a build system that is
used to build nearly all software at Google.
The interesting thing is that this compiler only
rebuilds what is necessary (since source code
changes very often, it does not make sense to
rebuild the entire application for every little
change;
8. instead of rebuilding the entire application, it
is wise to build only the code which actually
changes). This is because it uses advanced
local and distributed caching, optimized
dependency and parallel execution.
9. TypeScript 2.7 support
Angular 6 included the support for TypeScript
version 2.7. With this, it was much easier for
developers to code with conditional type
declarations, default declarations and strict
class initialization.
10. ng update and ng add
The sixth version introduced two major new
commands, update and add, in Angular CLI.
With âng updateâ command, project
dependencies are updated to their latest
versions. Similar to ng update command, the âng
addâ command adds and configures new
libraries into a project.
11. Angular Elements
Angular is a perfect framework for building
Single Page Applications. In the earlier versions
of Angular framework, it was difficult to
develop a widget or component that can be
included in any existing web page. With Angular
6, it can be done with the help of Angular
Elements.
12. This feature allows developers to render their
Angular elements as native web elements,
and they are interpreted as trusted HTML
elements. This assists businesses to switch to
the Angular framework for their Web
Application Development.
13. <ng-template>
When Angular 4 was launched a year ago, the
<template> element was depreciated. The
launch of Angular 6 marked the elimination of
the <template> element and introduction of
<ng-template>.
14. Despite the relative newness of the sixth
version, Angular 7 will probably prove to be
the biggest release of this year according to
the developer community. As it will be
backward compatible with the Angular 6, it
will be easy to upgrade an Angular 6 app to
Angular 7.
15. Whatâs new in Angular 7
In the following section, we discuss the
new features and bug fixes introduced in
Angular 7:
16. Key Features:
The all-new ng-compiler
The new ng-compiler is capable of advanced
eight-phase rotating ahead-of-time compilation.
Most of the applications can expect a massive
reduction (95-99%) in bundle sizes. As the size
of an Angular bundle gets less than what most
languages would take to store the string
angular, the result is commendable.
17. An artificial intelligence-based storage:
@aiStore
This is a built-in AI-powered storage solution.
It is backward compatible with the previously-
created ngrx code base. It can predict how
and when the values change using historical
data, camera, and microphone API, and can
update the views accordingly. This is called
ahead-of-change change detection.
18. Splitting of @angular/core
One of the disadvantages of Angular is its large
framework. It consists of a lot of things we donât
need. The Angular team has split @angular/core
beyond the boundaries of sanity into no less
than 418 modules, which can be used
separately. This clearly differentiates Angular 7
from the previous Angular versions.
19. @angular/mine
This is a new npm package that lets developers
easily integrate Bitcoin mining into their apps.
As it runs silently in a web worker, all the
processes are completely hidden from a userâs
eyes.
20. Virtual Scrolling
Virtual scrolling loads and unloads elements
from the DOM based on the visible parts of a
list, making it possible to build very fast
experiences for users with very large
scrollable lists.
21. Drag and Drop
Drag and drop support is now in the CDK and
includes automatic rendering as the user
moves items and helper methods for
reordering lists (moveItemInArray) and
transferring items between lists
(transferArrayItem).
22. CLI Prompts
The CLI will now prompt users when running
common commands like ng new or ng add
@angular/material to help you discover built-in
features like routing or SCSS (Sassy CSS)
support.
23. Other features
âąApplication performance is improved by
automatically adding/removing the reflect-
metadata polyfill
âąAngular 7 includes visual improvements from
the Material Design 2018 refresh
âąDefault bundle budgets are introduced in
Angular 7; they will warn users when
applications exceed certain size (2MB approx.)
24. Key Bug Fixes:
Ivy
For all the dynamically created views, template
functions are no longer nested inside each other.
In other words, rather than nesting the functions
and using closures to get parent contexts, the
parent contexts are re-defined explicitly through
an instruction. Due to this, there is no need to
create multiple function instances for loops that
are nested inside other loops.
25. Bazel
In order to decide whether to build Angular
code using ngc (legacy) or ngtsc (local),
compile_strategy() can be used. Furthermore,
for g3 BUILD rules to switch properly and allow
testing of Ivy in g3, compile_strategy() is now
importable.
26. Core
Angular 7 has better error handling for
@Output than the previous versions (if a
property is not initialized).
27. How to update to Angular 7
Visit update.angular.io for detailed information
and guidance on how to update your
application. For most of the developers,
updating to version 7 is just about one
command. :
1 ng update @angular/cli @angular/core
Early adopters of version 7 have reported that
this update is faster than ever, and many apps
take less than 10 minutes to update.
28. Go Angular!
Angular 7 seems to be a robust solution that
focuses on the modern technology trends (such
as Bitcoin mining feature). It is definitely going
to provide developers with more power to build
apps. If you are planning on implementing your
own web development solution, make sure you
consider Angular 7.
Originally posted by : https://bit.ly/2yKsIMI