×
@MartinaKraus11
New Renderer since version 9
Focusing on small bundle size
Together with Bazel up 30% faster compilation time
Angular Apps should be easier to debug
@MartinaKraus11
ng update @angular/core @angular/cli
https://update.angular.io/
@MartinaKraus11
Angular provides two compilers:
Ngtsc (Ivy compiler): compiles Ivy-compatible code
GDE in Angular
Women Techmakers Ambassador
Trainer and Consultant
@MartinaKraus11
Martina Kraus
martinakraus
@MartinaKraus11
@MartinaKraus11
Better build times, thanks to incremental compilation
Smaller and faster bundles
Sets the ground for lazy-loading components
Is easy to debug
Introduces new non-zone.js based change detection
Uses higher-order components
@MartinaKraus11
HTML Template
Data
Template
Angular Interpreter
DOM
@MartinaKraus11
HTML Template
Template instructions
DOM
@MartinaKraus11
SO MUCH
SMALLER
FASTER
EASIER
WOW
WOW
WOW
@MartinaKraus11
Lazy loading components
Higher Order Components
Zoneless
change detection
@MartinaKraus11
Lazy loading components
Higher Order Components
Zoneless
change detection
@MartinaKraus11
@MartinaKraus11
ComponentFactoryResolver
@MartinaKraus11
ViewContainerRef
Injector
@MartinaKraus11
@MartinaKraus11
Lazy loading components
Higher Order Components
Zoneless
change detection
@MartinaKraus11
@MartinaKraus11
@MartinaKraus11
@MartinaKraus11
@MartinaKraus11
Modifying component traits at runtime
(Automatically unsubscribing/ subscribing, changing styles)
More dynamic
Every Ivy component is a standalone component
@MartinaKraus11
Lazy loading components
Higher Order Components
Zoneless
change detection
@MartinaKraus11
Hard dependency of every Angular Application
"zone.js": "~0.10.2"
NgZone triggers the change detection automatically
Takes care of all event handlers and data bindings
@MartinaKraus11
More than 100kB
many performance issues
(long cd cycles together with frequent browser events)
too much magic
@MartinaKraus11
Ivy has been defined without considering Zone.js
@MartinaKraus11
Calling Angular to check data Binding with Ivy Instruction
@MartinaKraus11
@MartinaKraus11
Ivy is an enabler: (For more dynamic applications)
me@martina-kraus.io
@MartinaKraus11
martina-kraus.io
Slides: https://slides.com/martinakraus/angularup-ivy-2020
Repo: https://github.com/martinakraus/ivy-AngularUP