Описание курса:

Курс создан для разработчиков, которые уже прошли курс Angular 6 (базовый) и хотят еще больше углубиться в тонкости работы с данным фреймворком. В ходе обучения Вы откроете для себя много скрытых и продвинутых возможностей, рассмотрите принципы тестирования кода и конфигурации установки приложений на Angular 6. На занятиях Вы узнаете, как правильно использовать все элементы и компоненты фреймворка, а также создадите полноценные динамичные приложения, внедрив в них обширный продвинутый функционал.

После изучения курса Вы сможете:

  • Создавать полноценные приложения с полным спектром возможностей и функций
  • Применять анимированную стилистику и анимацию в разрабатываемые приложения
  • Досконально понимать принципы тестирования HTTP-запросов
  • Использовать полезные библиотеки при проектировании приложения
  • Разбираться в принципах взаимодействия компонентов фреймворка Angular 6

Программа курса:

  • Angular 6 и его подробная работа с DOM, а также имитация Shadow DOM
    • Особенности обработки DOM фреймворком
    • Подробности построения и парсинга DOM из HTML шаблонов
    • Обработка свойств и атрибутов HTML элементов
    • Обработка стилей HTML элементов
    • Angular Web Components - Angular Elements
    • Ivy Renderer — новый механизм рендеринга
  • Подробное изучение взаимодействия компонентов
    • Паттерны и способы взаимодействия компонентов между собой
    • Взаимодействие компонентов с помощью событий используя EventEmitter или ViewChild
    • Взаимодействие компонентов на основе сервисов
    • Использование Observables для хранения данных в сервисе
    • Разбор декоратора Injectable и суть его использования
  • CLI в деталях
    • Шаблоны
    • Структура проекта
    • Обсуждение необходимости стандартизации структуры проекта
  • Детальный разбор роутинга в Angular 6 и его возможностей
    • Использование child-роутов
    • RouteGuards
    • Использование CanActivate для ограничения доступа к роутам по правам пользователей
    • Изучение CanDeactivate и для чего это нужно
    • Асинхронный роутинг
    • Динамическая загрузка компонентов
    • Реализация pre-fetching data для подгрузки данных до момента отображения страницы
    • NavigationSource и restoreState в NavigationStart
  • Детальное знакомство с библиотеками, используемых в Angular 6, внедрение сторонних библиотек в приложение
    • Знакомство с RxJS, zone.js и полифиллами для использования Angular 6 в IE9 и выше
    • Знакомство с Reactive Programming
    • Реализация Redux контейнеров и управления состояниями с помощью ngx-store
    • Полезные библиотеки для Angular 6
  • Детальное знакомство с HttpClient API
    • Продвинутое изучения запросов к серверу с помощью Angular 6
    • Знакомство с GraphQL и его использование
    • Работа с не JSON данными
    • XSRF защита
    • Тестирование HTTP запросов
  • Анимации с использованием Web Animations API и визуализация данных с помощью SVG и D3.js
    • Разбор Animations модуля в Angular 6
    • Реализация анимаций
    • Знакомство с D3.js
    • Реализация анимаций SVG и визуализация данных
    • Angular Material с CDK
  • Тестирование кода в Angular 6
    • Unit тестирование с помощью Jasmine/Karma
    • Тестирование компонентов и директив
    • Тестирование сервисов
    • Тестирование роутинга
    • Изолированные Unit тест
    • Angular testing API
  • Конфигурация установки Angular 6 и Deployment приложения
    • Установка необходимых npm пакетов
    • CLI
    • Конфигурация TypeScript
    • JIT vs AOT компиляция
    • Deployment
    • App Budgets
  • Дополнительно
    • Подробное знакомство со Style Guides
    • Подготовка и установка CI на основе Docker
    • Миграция с Angular 1.x.x

Минимальные требования:

  • Уверенное знание JavaScript
  • Знание Angular 2/4
  • Знание TypeScript
  • Наличие собственного ноутбука для занятий в аудиториях

* Указанные скидки не суммируются с другими действующими акциями и специальными предложениями. Если у Вас возникли вопросы, обращайтесь за консультацией к нашим менеджерам!