Angular 8 – It’s all about Ivy

It’s June 2019 and here we are again talking about the latest update to Angular. Version 8, which was released in late May, has advanced past beta and is now fully released. Although a major version update, version 8 doesn’t contain too many changes from 7. The most glaring difference is the opt-in preview for Ivy, the new compiler that the Angular team has been teasing for a long time.

Here are some of the main improvements that come with the Ivy compiler:

  • Faster rebuild times
  • Smaller payload size
  • Better error checking at runtime via the template
  • Improved code generation at compile time so that developers can walkthrough issues easier

As is shown above, the Angular team primarily focused on some of the weaknesses of the framework in the version 8 update. One of the most common issues developers highlight within Angular is the payload size and troubleshooting solutions during runtime. This update was meant to improve that.

Bundling Improvements

Another significant change that comes with Angular is the ‘Differential Loading of Modern JavaScript’ that is described in depth by the Angular team. What this means is that the new Angular compiler will be able to distinguish between modern JavaScript applications (ES2015+) and older legacy applications (ES5) and optimize bundles based on that distinction.

During a benchmark run of Angular 7.2 vs 8.0, there were a number of encouraging results that transpired. Each application was created using ng new followed by the ng build –prod command, and here were the conclusions:

Angular 7.2

The production build utilizing Angular 7.2 generated a 240 KB main.js. The application performed less than admirably, passing 1/6 performance indicators and receiving an overall performance and speed weighted score of 77/100

Angular 8.0

With Ivy compiling at full speed, the main.js bundle size became minimized to 170 KB and passed all six performance indicators on its way to a 95/100 weighted score. This is exactly the kind of increased processing power that Ivy gives Angular 8.

Conclusion

Although not a significant update, Angular 8 is allowing developers to get their feet wet with the future of Angular processing power in the browser: Ivy. Angular developers will be thrilled to see that most of the pain points of the framework are starting to be addressed with this new update, and hopefully we see even more when version 9 rolls around.

Share this:

Leave a Reply

Your email address will not be published. Required fields are marked *