A Hint of What’s to Come: AngularJS 2.0Posted by Itay Herskovits on Mar 23, 2015
Over the past several months, a lot has been written about the forthcoming changes in AngularJS 2.0. While not much is available in the way of details, there are some changes that have been released by the Angular 2.0 team that have raised a lot of concerns among seasoned AngularJS developers. In this article we’ll take a brief look at what is changing, how it impacts your application, and anything to keep in mind when making the transition from Angular 1.X.
One of the major performance concerns with AngularJS 1.X was that it used a number of behind-the-scenes techniques to ensure that presentation of the DOM was consistent across multiple browsers. This was achieved via the DOM Wrapper, which worked to ensure that consistent visuals were produced for each browser architecture. Naturally, a wrapper of this type added some additional weight to the framework, resulting in some performance hits. In the several years since the inception of Angular 1.X, though, most browsers have standardized on DOM handling that more closely matches standards, meaning that in the strictest sense the DOM wrapper is no longer necessary. While this has the potential to introduce incompatibilities in older versions of popular browsers (such as IE 8 and 9), the reduced code base should improve the framework’s stability and performance.
Code Structure and Development
The above changes are only a subset of the items being modified in Angular 2.0. One thing not mentioned, for example, was the extensive work done on the Templating and Data-binding functionality which can have a significant impact in terms of development experience and developer throughput. However, at this point – with the Angular team likely targeting an end-of-2015 window for release – it is hard to nail down a “final” feature set. With active development continuing on the framework, the only constant at this point is change. That being said, the elements mentioned above are largely being touted as core components of the new framework model, and are relatively unlikely to change in a significant way prior to release. While exact numbers are obviously not available, it is a safe bet to say that the AngularJS team has the developer experience in mind, with a focus on improving stability and performance to the extent possible while extending the framework to accommodate the newer functionality and more consistent DOM representations of modern browsers. While there will be some transitory pain when moving to the new version, so far everything is looking to be worth the effort.