Angular is a JavaScript framework developed by Google’s engineers to help the developers create client applications.
First of all, it is aimed at developing SPA solutions, that is, one-page applications. In this regard, Angular is follows on from another framework - AngularJS. This is not a latest version of the latter, but a fundamentally new framework.
One of the key features of Angular is that it uses TypeScript as its programming language.
AngularJS is endowed with a huge number of tools to facilitate the programmers’ life. Of course, the task of the developer is to learn the rules for their use. The arsenal of Angular tools includes:
AngularJS was originally designed to create single-page web apps. Thus, the browser will initially open only one page and additional content will be loaded as needed. With this approach, traffic is saved and server load is reduced.
AngularJS reduces application development time. This is achieved through built-in mechanisms that greatly assist the developer. One of these mechanisms is the built-in template engine. The template engine allows you to use the built-in AngularJS commands for data output.
Another great tool that AngularJS provides is Document Object Model (DOM) management. If while developing using jQuery (or jQuery UI / jQuery Mobile) programmers constantly have to manually update all the data on the user's screen, then AngularJS does all the work itself. A programmer indicates which elements are attached to data objects, and updated information is displayed on the screen with each state change.
AngularJS uses an object-based approach to design. This architecture is called Model View Controller (MVC).