What Can Be Done With AngularJS?

MVC

AngularJS supports the industry standard software development paradigm – Model View Controller, well sort of! A more accurate description would be MVVM (Model View View-Model). Adopting MVC/MVVM ensures that you web application is well architected and easier to maintain.

AngularJS augments traditional ViewModels with a JavaScript object “$scope” which in essence, is a lightweight API that detects and broadcasts messages to the state. Consequently, this makes the developers job that little bit easier!

DIRECTIVES

AngularJS extends the traditional functionality to existing HTML elements with “directives”. Using AngularJS directives, developers can create custom HTML tags that serve as new widgets with specific functionality.

AngularJS also has many built in directives that speed up web development, for example, with just a few lines of code, you can dynamically update elements in a web page with minimal JavaScript.

TWO WAY DATA BINDING

Possibly one of the coolest and most used features on AngularJS is “two-way-data-binding”. In most modern web applications, approximately 70% of the codebase is dedicated to traversing, manipulating and listening to events raised by the DOM (document object model). These events are often responsible for getting and setting properties on a “model”.

Changes to model drive updates to DOM elements, whereas updates to the DOM mean the underlying model must change. This process can be further complicated by user interaction!

Traditionally, it‘s the developers job to manually manipulate the DOM and elements therein to reflect and updates to a given model and vice versa. Needless to say, it‘s tedious process and very manual which can become difficult to manage as a web application grows in complexity.

AngularJS two-way-databinding automatically handles the synchronization between the DOM / model and vice versa!

Benefits of AngularJS

It’s easy

AngularJS is a JavaScript framework that embraces HTML and makes it into a more expressive and readable format. Instead of manually updating your views, AngularJS handles this for you leaving you to focus on business logic tasks. Consequently, AngularJS helps you write cleaner and more efficient code which makes building your web applications that little bit easier.

It’s Simple

As a JavaScript framework that implements the MVC paradigm, AngularJS is simple enough to get started with. You couldn‘t learn it in a few days however. That‘s said, one blogger has put together a post titled “The Ultimate Guide to learning AngularJS in one day!”. We think that‘s a bit ambitious but AngularJS has a mature developer community meaning that learning AngularJS is only a few clicks away.

It’s FLEXIBLE

With built in features such as Dependency Injection (DI), Unit Testing and Filters, you can rest assured that any web application built using AngularJS has flexibility built into its foundations. For example, using AngularJS Filters, you can transform data just before it reaches the view. This very flexible and useful feature allows you to programmatically determine the intention of the user interface.