Что такое 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
Характеристика | Angular | React | Vue |
---|---|---|---|
Тип | Фреймворк | Библиотека | Фреймворк |
Язык | TypeScript | JavaScript + JSX | JavaScript + шаблоны |
Кривая обучения | Средняя / высокая | Низкая / средняя | Низкая |
Архитектура | MVVM, модульная | View-only, декларативная | MVVM |
Поддержка корпораций | Meta (Facebook) | Alibaba, Individual |
Интересный факт:
Angular — это второе поколение. Ранее существовал AngularJS (v1.x), который не совместим с новой версией (v2+).