Количество часов
40 ак.ч
Продолжительность
10 занятий
Время: 18:30-21:30
Формат: Гибридный (на выбор) — онлайн в режиме реального времени или офлайн по адресу: г. Минск, ул. Амураторская, 4. (ст. м. Молодежная).
После курса вы:
- узнаете состав и принципы работы этого фреймворка,
- сможете разрабатывать frontend приложения на Angular,
- научитесь работать с библиотекой реактивного программирования RxJS,
- будете использовать библиотеки UI-компонентов для построения пользовательских интерфейсов.
Необходимая подготовка:
базовые знания в JavaScript, HTML и CSS.
Преподаватель курса:
Валерия Смелова — инженер-программист, разработчик в iTechArt. Знания и навыки: Angular, Express.js, Node.js
Программа курса:
1. Введение
1. Структура web-приложения.
2. HTML, CSS, DOM, BOM, JavaScript, TypeScript
3. Протокол HTTP и его основные свойства.
4. AJAX-методология.
5. Single-page web-приложениe.
6. Angular и его применение в web-разработке.
7. Инструментарий и порядок разработки Angular-приложения.
8. Структура Angular-приложения (компоненты, модули, сервисы, …).
9. Маршрутизация внутри приложения (классы Router и ActivatedRoute).
2. Жизненный цикл Angular-приложения
1. Жизненный цикл компонента
2. Хуки и их применение
3. Свойства компонента Input и Output
4. Виды связывания данных (Data Binding)
5. Отслеживание изменений в компоненте (ChangeDetection)
3. Angular директивы и Pipes
1. Виды директив Angular и их применение
2. Разница структурных и атрибутивных директив
3. Применение структурных директив с шаблонами (ng-template)
4. Разработка пользовательских директив
5. Виды pipes в Angular и их применение
6. Разница Pure и impure пайпов
7. Разработка пользовательских пайпов
4. Модули работы с формами FormsModule, ReactiveFormsModule
1. Два подхода для работы с формами в Angular, их суть
2. Template-driven подход в FormsModule
3. Reactive подход в ReactiveFormsModule
4. Валидация форм, использование встроенных валидаторов
5. Разработка пользовательского валидатора
6. Применение методов submit, patchValue, setValue, reset и другие.
5. Angular провайдеры
1. Технология внедрения зависимостей (Dependency Injection), реализация в Angular
2. Понятие Angular провайдера, провайдеры разного уровня
3. Токены инъектирования (Injection Tokens), использование кастомных токенов
4. Разработка сервисов, взаимодействие компонент через общие сервисы
5. Тип провайдера Guard, разработка и применение
6. RxJS в Angular
1. Библиотека RxJS, суть реактивной обработки потока данных
2. Паттерн издатель-подписчик, классы Observable, Subject
3. Разница между Observable и Promise
4. Виды Subject
5. Pipeable операторы
6. Использование пайпа async в шаблонах для работы с Observable/Subject
7. HttpClient в Angular
1. HttpClient класс, отправка разных видов запросов, внедрение клиента в сервисы
2. Взаимодействие HttpClient и RxLS, два подхода к обработке http-ответов
3. Передача query-параметров
4. Резолверы и перехватчики
8. Стилизация в Angular
1. Механизм ViewEncapsulation, для чего он служит
2. Разные виды ViewEncapsulation, их разница
3. Глобальная стилизация, возможности SCSS, BEM-нотация
4. ng-deep
5. библиотека UI-компонентов Angular Material
6. Способы переопределения библиотечных стилей
9. Проекция контента
1. Технология проекции контента, область применения
2. Тэги ng-content, ng-template, ng-container, разница между ними
3. Ссылка на шаблон в компоненте (ViewChild) и в самом шаблоне (ngTemplate)
4. Передача контекста в шаблон ngTemplateOutlet
5. Angular движок Ivy, Virtual и Incremental DOM
10. Состав фреймворка Angular
1. Состав фреймворка Angular
2. Виды компиляции JIT, AOT
3. Способы оптимизации работы приложения
4. Angular Universal, преимущества и недостатки server-side рендеринга
5. Публикация приложения на Heroku
11. Unit-тестирование компонентов Angular
1. Концепция Unit-тестирования, встроенные инструменты Angular для тестирования компонентов
2. Тестирование компонентов, сервисов, резолверов
3. Тестирование с помощью библиотеки Spectator
4. E2e-тестирование
12. Локализация Angular приложения
1. Локализируемые аспекты приложения: язык, формат даты/времени, верстка RTL
2. Библиотека i18n, кейсы для ее использования
3. Библиотека ngx-translate, кейсы ее использования
13. PWA приложения
1. Признаки PWA приложения, примеры PWA
2. Конвертация Angular-приложения в PWA
3. Service workers в PWA
4. Web workers
14. Последняя обзорная лекция + викторина
Получить дополнительную информацию:
1. Структура web-приложения.
2. HTML, CSS, DOM, BOM, JavaScript, TypeScript
3. Протокол HTTP и его основные свойства.
4. AJAX-методология.
5. Single-page web-приложениe.
6. Angular и его применение в web-разработке.
7. Инструментарий и порядок разработки Angular-приложения.
8. Структура Angular-приложения (компоненты, модули, сервисы, …).
9. Маршрутизация внутри приложения (классы Router и ActivatedRoute).
2. Жизненный цикл Angular-приложения
1. Жизненный цикл компонента
2. Хуки и их применение
3. Свойства компонента Input и Output
4. Виды связывания данных (Data Binding)
5. Отслеживание изменений в компоненте (ChangeDetection)
3. Angular директивы и Pipes
1. Виды директив Angular и их применение
2. Разница структурных и атрибутивных директив
3. Применение структурных директив с шаблонами (ng-template)
4. Разработка пользовательских директив
5. Виды pipes в Angular и их применение
6. Разница Pure и impure пайпов
7. Разработка пользовательских пайпов
4. Модули работы с формами FormsModule, ReactiveFormsModule
1. Два подхода для работы с формами в Angular, их суть
2. Template-driven подход в FormsModule
3. Reactive подход в ReactiveFormsModule
4. Валидация форм, использование встроенных валидаторов
5. Разработка пользовательского валидатора
6. Применение методов submit, patchValue, setValue, reset и другие.
5. Angular провайдеры
1. Технология внедрения зависимостей (Dependency Injection), реализация в Angular
2. Понятие Angular провайдера, провайдеры разного уровня
3. Токены инъектирования (Injection Tokens), использование кастомных токенов
4. Разработка сервисов, взаимодействие компонент через общие сервисы
5. Тип провайдера Guard, разработка и применение
6. RxJS в Angular
1. Библиотека RxJS, суть реактивной обработки потока данных
2. Паттерн издатель-подписчик, классы Observable, Subject
3. Разница между Observable и Promise
4. Виды Subject
5. Pipeable операторы
6. Использование пайпа async в шаблонах для работы с Observable/Subject
7. HttpClient в Angular
1. HttpClient класс, отправка разных видов запросов, внедрение клиента в сервисы
2. Взаимодействие HttpClient и RxLS, два подхода к обработке http-ответов
3. Передача query-параметров
4. Резолверы и перехватчики
8. Стилизация в Angular
1. Механизм ViewEncapsulation, для чего он служит
2. Разные виды ViewEncapsulation, их разница
3. Глобальная стилизация, возможности SCSS, BEM-нотация
4. ng-deep
5. библиотека UI-компонентов Angular Material
6. Способы переопределения библиотечных стилей
9. Проекция контента
1. Технология проекции контента, область применения
2. Тэги ng-content, ng-template, ng-container, разница между ними
3. Ссылка на шаблон в компоненте (ViewChild) и в самом шаблоне (ngTemplate)
4. Передача контекста в шаблон ngTemplateOutlet
5. Angular движок Ivy, Virtual и Incremental DOM
10. Состав фреймворка Angular
1. Состав фреймворка Angular
2. Виды компиляции JIT, AOT
3. Способы оптимизации работы приложения
4. Angular Universal, преимущества и недостатки server-side рендеринга
5. Публикация приложения на Heroku
11. Unit-тестирование компонентов Angular
1. Концепция Unit-тестирования, встроенные инструменты Angular для тестирования компонентов
2. Тестирование компонентов, сервисов, резолверов
3. Тестирование с помощью библиотеки Spectator
4. E2e-тестирование
12. Локализация Angular приложения
1. Локализируемые аспекты приложения: язык, формат даты/времени, верстка RTL
2. Библиотека i18n, кейсы для ее использования
3. Библиотека ngx-translate, кейсы ее использования
13. PWA приложения
1. Признаки PWA приложения, примеры PWA
2. Конвертация Angular-приложения в PWA
3. Service workers в PWA
4. Web workers
14. Последняя обзорная лекция + викторина
Получить дополнительную информацию:
+375 29 690 40 33, HPaulovich@instituteiba.by