
A sneak peek at the radically new Angular 2.0 – JAXenter - dkarapetyan
http://jaxenter.com/angular-2-0-112094.html
======
ep103
My notes from the video:

1) breaks all compatibility with angular 1

2) there are no longer directives, controllers, $scope or jqLite

3) forces use es6 features that haven't been accepted yet by the community.

4) forces static typing of javascript in the same way that didn't work in
Google dart, as opposed to building on top of es6 modules

5) Since we've dropped all major components of angular, they've brought back
non-semantic html. Everything is now triggered via onclick="" tags. Except
since now there's no controller, what they've actually done is introduce non-
semantic templating into angular templates, which are now required to replace
your controller definitions.

6) in order to allow for Dart-esque static-like typing, directives can no
longer be used throughout an application, every module that wants to use a
directive needs to be hardcoded into an array in the directive.

7) modules have been replaced by es6 modules, yay!

8) the three scope type bindings are now no longer settings on your binding,
but rather differnt syntaxes you use specifically in your angular templates

9) your components in your directives are DI'd by whateber the closest
service/module/etc is closest in the template where it is being used, instead
of being configured on an application or controller level (since those things
no longer exist). So concievably, you no longer need to configure any DI,
ever, but if you start injecting your templates into other templates, you will
have all sorts of collisions (which can be good or bad depending on the
application's desires), but seems untestable.

10) because all objects are now tied into the templates, broadcasting of
events on child types no longer need to be done through services or listening
to the DOM, instead you can just query your current object, and it will have a
reference to all events bubbling up or down the dom.

11) Did I mention jqLite is gone? And they did it so they can fudge better
benchmark results vs ember / react / knockout / backbone, not for an actual
technical reason.

12) Chrome will have a better angular specific performance tool in their
webdev tools, of course. Makes sense, since ff just built jquery support into
fdt/fb

