• Rahul Prabhune

Advantages of AngularJS


MV* Framework

Since angular is based on MVVM/MVC framework, model data and its business logic is decoupled from view. This makes our code reusable where view and model can have many to many relationships.


Two way binding

Angular provides built-in two way communication between modal data and view. This saves us lot of plumbing which we otherwise would do in JavaScript.


Services

Angular provides built-in services like $http, $q to make our life easier and save time. We can create our custom services and expose them in other services or controllers using dependency injection.


Reusability

Reusable code can be raped-in as a directive and this directive is exposed as HTML tag, attribute or class in the view.


Separations of concerns

In angular, every component will have one role, one file and singular purpose. For example: we would have a separate component called service to perform CURD operations on data in the database and not use controller for this.


Single page applications

Angular provides built-in routing mechanism which enables us to create SPA easily.


Unit Testing

Angular provides built-in dependency injection feature which enables us to test individual units of code.


Readability

Angular extends HTML with built-in and customized directives. So ideally we would get good understand of what application does by just going through HTML instead of JavaScript.


Project and Teams

Angular does a decent job in large projects and big teams as team members can create multiple modules, directives, filters and services individually and integrate all of them together.


Quick start and community

Angular is easy to learn and its popularity makes it easy to find resources and put a team together. Angular community is huge and lot of help is already available on web.