# IT:Angular.JS #
* [[../|(UP)]]
{{indexmenu>.#2|nsort tsort}}
* See also:
* [[IT/AD/Protractor/]]
* [[IT/AD/Durandal.JS/]]
* [[IT/AD/Angular/]]
* [[IT/AD/Vue.JS/]]
* [[IT/AD/REST/]]
* [[IT/AD/APIs/]]
* http://scotch.io/tutorials/javascript/animating-angularjs-apps-ngview
Angular is a full-featured, Modular, Client side MV*C library.
## Notes ##
#### ACiD Summary
* Advantages:
* Being full featured, it offers convenient access to DOM manipulation, Directives/Expressions, Templating, Model/View management, 2Way Binding, Routing, History Management, DI, Services, Factories, Testability, etc.
* Considerations:
* being full featured makes it maybe easier for managing inter-dependencies alternate libraries that do the same thing (Q, JQuery, Sammy.JS, History.JS, Require.JS). The downside is that full featured means it's Angular.JS's opinion on what is full featured -- and you might disagree, and think that it really is missing key features.
* Disadvantages:
* Currently, Angular's full-features is missing what I consider an essential part of a full-featured framework: script loading (eg: Require.JS) ((http://stackoverflow.com/questions/17409682/can-you-use-angular-dependency-injection-instead-of-requirejs)). Which is why:
* [[IT/AD/Durandal.JS/]]'s loading of Views + ViewModels *by convention* beats it hands down, compared to Angular's OTB behavior.
* It too uses '$' -- making you have to watch out a little bit for impact when combining with JQuery/JQueryUI.
### Offering
A map of the concepts.
Modules ..> Config
Config o.. Routes
Routes ..> Views
Routes ..> Controllers
Views ..> Scope
Controllers ..> Scope
Views ..> Directives
Views ..> Expressions
Directives ..> Filters
Expressions ..> Filters
Controllers ..> Values
Controllers ..> Factories
Controllers ..> Services
Controllers ..> Providers
Modules .. Constants
Modules .. Values
Modules .. Factories
Modules .. Services
Modules .. Controllers
hide members
hide circle