Since the announcements of all the Angular 2.0 changes last week, the Internets have been hot with people voicing their concerns and criticisms over what the Angular team is doing. Many of these criticisms are perfectly valid, but there's also plenty of hyperbole and even some straight-up misinformation being spread around.
There's one particular meme making the rounds that I feel like addressing. That is the idea that Angular 2.0 is going to be a completely new framework that shouldn't even be called Angular. That somehow, all of the concepts and ideas behind Angular 1.x are going to just go away and that there's going to be no upgrade path.
The "Angular 2.0 Core" talk by Igor Minar and Tobias Bosch was an ng-europe highlight for me. What they basically did was announce a mass slaughter of Angular 1.x features and API cruft, worthy of a Game of Thrones wedding.
One of my favourite moments was when they announced the removal of controllers. This is because I've recently come to a realization that using standalone controllers, as with ng-controller, rarely leads to an optimal design.
I've been having a hard time getting excited about Web Components. I mean, I'm pretty sure I get why they're useful and I expect to be using them a lot in the future. It's just that I haven't been able to see Web Components as the "tectonic shift" people make them out to be.
Much has been written about Angular's dependency injection framework. As I've been recently writing the dependency injection chapters of Build Your Own AngularJS, I thought I might as well join the club and provide my own introduction to Angular DI.
This article addresses the dependency injector of Angular 1.x, which is the version everyone is currently using. The 2.0 version will be very different, and is an interesting topic in its own right. I've written a bit about it earlier.