Angular 2: What’s Working, What Needs Work and Where It’s Heading

Angular 2, the full-platform successor to Google’s Angular 1 Web application framework first announced in October 2014, was released in September 2016 as the complete, final version of the framework. Based on newer JavaScript standards and a new architecture, Angular 2 was created to provide developers with a better framework for building complex applications for both Web and mobile platforms.

While the second edition of Angular is still in its infancy, it’s already proving to be leaps ahead of its predecessor. In looking at how Angular 2 is positioned to shape the future of Web development, we examine what is working so far, what elements of the framework are still lacking, how it measures up to other frameworks and its outlook and implications for developers.

What’s Working

Compared to Angular 1, most would agree that Angular 2 is a vast improvement, with its revamped core architecture, TypeScript for development, observer pattern and data binding model. Additionally, it provides up to 10-times faster performance and better concepts for UI components, giving developers the ability to make excellent applications in their preferred environment.

Angular 2’s framework consolidates development processes, which is supremely beneficial, as frameworks can evolve rapidly (JavaScript especially) and can be overwhelming to companies with long lead app development cycles that take years to complete. Angular 2 gives a much-needed, reliable framework that developers can use for the different applications they’re building. This framework enables developers to learn – and teach – one framework for the Web, rather than requiring a full team with a wide range of different coding skillsets.

What Needs Work

While it is proving to be a far superior framework than version one, Angular 2 comes with some limitations and drawbacks as it retires from beta.

When the first details around Angular 2 were announced at ngEurope, the initial reaction from many developers was negative. This sentiment arose largely from Angular 2’s lack of backwards compatibility and the elimination of Angular 1’s APIs. The second Angular framework did drop several APIs from the first version, and since it is not backward compatible most developers had to rewrite portions of applications to make the upgrade.

Angular 2’s most glaring issue today is that the framework is lacking some UI components and integrated tooling. Developers are still working out the best way to use the Angular command-line interface (CLI), which has not yet had a 1.0 release. Furthermore, many developers not comfortable using the CLI are still waiting for Angular to be integrated into their IDE of choice, like Visual Studio. While Angular provides some tooling, it is going to take time for third-parties to step in to provide all these necessary enhancements. Angular 2’s release should help spur that, serving to alleviate vendors’ hesitancy to add support to the still-evolving framework.

The Competition

Compared to other top frameworks, like Ember and React, Angular 2 is often preferred by developers today. Ember is similar to the Angular 2 framework because it is also fully featured. However, Ember doesn’t give developers a way to run code on multiple platforms. React does allow this, with React Native, and Angular does with NativeScript. This restricts Ember developers from sharing their code across multiple development environments.

React is a more minimal framework, and React developers need to use a number of different community-written tools to ship an application. Developers are in favor of using Angular 2 because these dependencies are maintained in the core project, which gives them a framework that can be reliably maintained throughout the project’s life.

Angular 2’s Outlook

While Angular 1’s primary purpose was to provide a framework for building Web apps, Angular 2 will allow developers to further expand their endeavors and build on top of them. The release of Angular 2 brought a faster, more powerful and more consistent framework to developers around the world, and freed developers to build apps not only inside the browser but in other ecosystems.

Young as it is, Angular 2 was made to be tool-able, which will help to streamline and improve Web application development. Web developers must assemble an intimidating set of libraries and frameworks to ship a modern application – Angular 2 has a framework that provides much of the functionality out of the box. As more vendors provide support for it, the Angular 2 framework will become better still.

For now, Angular 2 works best in non-trivial applications (those have 10 or more views) and those that utilize a significant amount of data. Yes, Angular may be used to build nearly anything – but the framework’s inherent complexity is overkill for the simpler apps that need a single platform to run. While other frameworks might see increased adoption among smaller companies and startups, we’ll probably see massive growth among enterprise adoption of Angular 2. Angular 1 is already popular at these large companies, and their developers are ready for an upgrade.

TJ VanToll TJ VanToll is a front-end developer, author, and a Principal Developer Advocate for Progress. TJ has over a decade of web development experience, including a few years working on the jQuery team. Nowadays, he spends his time helping web developers build mobile apps through projects like NativeScript.
 

Comments

Comments(9)

steelx

I have been saying the same thing for long but people didn't understand. Yes Angular 2 not faster than React. But Angular 2 is a beast for long-term projects and is a complete enterprise solution. 

In short.

React-redux = a speedy racer bike.

Angular 2 = An elite Range Rover of the long run.

elliotdickison

I've been learning Angular 2, coming from React et al, and I will say it's (subjectively) pretty easy. The all-in-one platform and behind-the-scenes magic has made development relatively fast up front. It's also extremely complex though, and I'm concerned it may be tricky to maintain a large Angular app over time. Is it worth it to give up simplicity for ease in this case?

NickyYo

"Developers are in favor of using Angular 2 because these dependencies are maintained in the core project, which gives them a framework that can be reliably maintained throughout the project’s life."

Hahaha what utter nonesense, "reliably maintained"?  They don't have a good track receord so far do they? what happened to Angular 1? it was made obsolete... meaning all my projects before Angular 2 are no longer maintained.  Think i'll stick with React.

Dave-Davidson

Have you tried Angular 2. You sound like someone looking for confirmation bias.

0x80

"Compared to other top frameworks, like Ember and React, Angular 2 is often preferred by developers today."

Just curious. What do you base this on? In my own bubble I have yet to meet a lot of developers who favor Angular 2.

joey.s

"Developers are in favor of using Angular 2" (than React). 

Where did you get that from?

Rob-Simpson

This is a helpful article to an overview of some of what angular 2 offers. You make some references to information that would seem to have data that would support the content - i.e. most would agree. Are there any reference articles or the likes that can be read that would back this up inline with what you have mentioned?