The Angular 9 JavaScript framework brings the long-awaited Ivy compiler, which offers a number of advantages, including smaller bundles.
Angular 9 is one of the biggest updates in the past three years, according to the developers in their announcement blog post. By this they mean, above all, the switch to Ivy as the standard compiler and runtime.
There are some advantages for developers associated with the switch, the most important of which are probably the up to 40 percent smaller bundles that Ivy produces. Ivy should also offer faster tests, better error handling and improved internationalization, among other advantages.
Ivy’s tree shaking makes for drastically smaller bundles
Ivy achieves a size reduction of up to 40 percent through so-called tree shaking. The compiler simply leaves out any Angular modules that are not required in the final bundle, thus generating leaner code. In addition, the compiler should simply work more effectively.
As a result, not only apps that only need a few Angular modules benefit from Ivy through tree shaking. Large applications also see economies of scale due to the overall more effective approach of Ivy.
Faster testing: Ivy doesn’t necessarily recompile components
Faster testing is another improvement that is relevant to everyday life. Instead of recompiling all components before testing, as before, Angular 9 only recompiles those that have actually been changed. The aim is to increase the speed by 40 to 50 percent. Version 9 also improves debugging with new tools and an overall more speaking and deeper code output.
Switching to Ivy delays update by several months
Angular 9 is late. The framework was originally supposed to appear in version 9 in late autumn 2019. During the tests, there were apparently stability and compatibility problems with the new compiler and old apps. Only now has a stable version been released.
The fact that the team took this time can already be explained by the fact that Google alone is using more than 1,500 Angular applications, but has no interest in their no longer outstaffing working after the version changeover. Downward compatibility was the most important point in the completion of the 9th version, which can be imagined as somewhat difficult. After all, the entire substructure of the framework had to be replaced for Ivy.
Suitable for this: React vs. Angular – when is which better?