Hack Frontend Community

Что такое Angular?

Angular — это фреймворк JavaScript с открытым исходным кодом, разработанный Google, предназначенный для создания динамических веб-приложений, особенно SPA (Single Page Applications).

Angular построен на TypeScript, использует мощную систему компонентов, директив, сервисов и модулей.


Ключевые особенности Angular

  • TypeScript — строгая типизация и расширения JavaScript.
  • MVVM-архитектура — разделение логики, представления и состояния.
  • Компонентный подход — интерфейс строится из переиспользуемых компонентов.
  • Инжекция зависимостей — встроенный механизм для управления зависимостями.
  • Роутинг — навигация между страницами без перезагрузки.
  • RxJS — реактивное программирование с Observables.
  • CLI — мощный Angular CLI для генерации кода, сборки и тестов.
  • Универсальный рендеринг — поддержка SSR (Angular Universal).

Что можно делать с Angular?

  • Создание одностраничных приложений (SPA).
  • Разработка корпоративных решений с модульной архитектурой.
  • Построение прогрессивных веб-приложений (PWA).
  • Интеграция с REST и GraphQL API.
  • Работа с формами, валидацией, анимациями и локализацией.

Пример простого компонента

import { Component } from '@angular/core';

@Component({
  selector: 'app-hello',
  template: `<h1>Привет, {{ name }}!</h1>`,
})
export class HelloComponent {
  name = 'Angular';
}
<!-- где-то в HTML -->
<app-hello></app-hello>

Angular vs React vs Vue

ХарактеристикаAngularReactVue
ТипФреймворкБиблиотекаФреймворк
ЯзыкTypeScriptJavaScript + JSXJavaScript + шаблоны
Кривая обученияСредняя / высокаяНизкая / средняяНизкая
АрхитектураMVVM, модульнаяView-only, декларативнаяMVVM
Поддержка корпорацийGoogleMeta (Facebook)Alibaba, Individual

Интересный факт:

Angular — это второе поколение. Ранее существовал AngularJS (v1.x), который не совместим с новой версией (v2+).