Angular (comumente referido como "Angular 2+" ou "Angular 2") é uma plataforma de aplicações web de código-fonte aberto e front-end baseado em TypeScript liderado pela Equipe Angular do Google e por uma comunidade de indivíduos e corporações. Angular é uma reescrita completa do AngularJS, feito pela mesma equipe que o construiu.
Angular foi uma base de reescrita do AngularJS.
- Angular não tem um conceito de "escopo" ou controladores, em vez disso, ele usa uma hierarquia de componentes como o seu principal conceito arquitetônico;
- Angular tem uma expressão diferente de sintaxe, concentrando-se no uso de "[ ]" para a propriedade de ligação, e no uso de "( )" para ligação do evento;
- Modularidade – muito das funcionalidades principais foram movidas para os módulos;
- Angular recomenda o uso da linguagem da Microsoft, o TypeScript, que apresenta as seguintes características:
- É baseado em classes de programação orientada a objetos;
- Tipagem estática;
- Programação genérica.
- O TypeScript é um superconjunto do ECMAScript 6 (ES6), e é compatível com ECMAScript 5 (i.e.: JavaScript). Angular também inclui ES6:
- Lambdas;
- Iteradores;
- For/Of loops;
- Python - estilo de geradores;
- Reflexão.
- Carregamento dinâmico;
- Modelo de compilação assíncrono;
- A substituição de controladores e $escopo com componentes e diretrizes – um componente é uma directiva com um modelo;
- Programação reativa de suporte usando RxJS.