Angular uses the following design patterns MVC (Model View Controller), MVVM (Model View View-Model) and MVP (Model View Presenter) to get the MVW (Model View What you want).
Hear “what you want” as “what works for you.”
Basically, the view changes are observed by the model and affects it and vice versa. This means that if you change an element in the view, the model is systematically updated, and if something changes in the model the view get updated. All in real time (or almost).
Personally, having recently tried it for a school project, I find it not too bad, as in functionalities and architecture. The point that bothers me is the two-way observation system (Model View and Model View) that overloads the system much. After all I’m still in the phase “This is all new so it’s cool” so maybe other disappointments will come.
Compatibility level is for “evergreen” and with a little luck for others. In short, the “evergreen” are browsers that update automatically (Chrome, Firefox, IE 11, Safari …).
This change makes a lot of noise in the developer community. Indeed such changes challenge the initial choice of technology. The March conference supported that Angular 1.x was not abandoned and that a version will always be available to users. In all cases, it will take the typescript to go version 1.5 (which should not be long now) to start playing with Angular 2.