Все курсы

Курс по Angular

Этот онлайн-курс посвящён профессиональной разработке веб-приложений с помощью Angular.

Программа

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

Вы будете получать актуальную информацию, писать правильный код, показывать его преподавателю, получать обратную связь и советы, и затем – двигаться дальше.

Мы внимательно следим за развитием Angular и будем использовать самые новые подходы и версии как фреймворка так и библиотек.

Курс можно условно разделить на три части.

  1. Окружение фреймворка, быстрый старт. Компонентный подход.
  2. Формы и навигация в приложении.
  3. Aрхитектура приложения, тестирование и производительность.

Детали программы смотрите далее.

Основные темы программы

Первая часть курса

  1. Быстрый старт с Angular

    • Знакомство с angular-cli и экосистемой.
    • Разработка простого компонента, инкапсуляция стилей.
    • Специфика синтаксиса шаблонов Angular.
    • Интерполяция и связывание.
  2. Компоненты, Директивы, Пайпы

    • Вложенные компоненты и передача данных в компонент и из него.
    • Вывод контента с помощью ng-content (content projection).
    • Доступ к елементам шаблона через ViewChild/ContentChild.
    • Применение директив из коробки (ngIf, ngClass, ngFor..).
    • Pipe и фильтрация данных. Impure pipes.
    • Структурные директивы. ViewRef/TemplateRef.
  3. Сервисы, работа с сетью и внедрение зависимостей

    • Концепция и способы создания провайдеров.
    • Примеры сервис-провайдеров из коробки.
    • Работа с http протоколом. HTTPClient.
    • Передача данных между копонентами.
    • Создание динамических компонентов.

Формы и навигация

  1. Работа с формами

    • Работа с формами от шаблона (template-driven forms).
    • Работа с формами от компонента (reactive forms).
    • Единицы постороения форм FormControl, FormGroup, FormArray.
    • Синхронная и асинхронная валидация данных.
    • Создание своего сложного элемент ввода. Работа с ValueAccessor.
  2. Навигация и маршрутизация

    • Определение состояний, вложенные и абстракные состояния
    • Сервис для доступа к параметра состояния и передача данных в состояния.
    • Стражи(guards) роутера. Аунтификация и контроль доступа к состояниям
    • Множественное представление (для сложных состояний)
    • Ленивая загрузка(lazy loading) и предзагрузка модулей

Третья часть

  1. Redux-архитектура для более сложных приложений

    • Основные концепции Redux
    • Платформа NgRX и ее модули
    • Обработка асинхронных событий. Эффекты
    • Агрегация даных. Cелекторы
    • Отладка приложения
  2. Тесты

    • Unit-тесты для сервисов
    • Специфика тестирования при использовании HttpClient
    • Unit-тесты для компонентов
    • Unit-тесты для директив
    • e2e интеграционные тесты
  3. Внутренности фреймворка Angular

    • ZoneJS/ NgZone для удобного управления асинхронностью
    • Механизм обновления состояния (change detection). Статегия OnPush
    • Погружение в исходный код фреймворка

Как проходит обучение?

Курс включает в себя 10 насыщенных занятий. Первая встреча традиционно является собранием и не входит в основной блок.

На каждом занятии мы изучаем что-то новое. Каждый смысловой модуль будет заканчиваться домашним заданием.

На протяжении всего курса вы можете работать над проектом, который является веб-приложением включающим в себя все разбираемые темы.

Чтобы получить от курса максимум результата, нужно не только слушать, но и делать что-то дома, а затем – показывать преподавателю. Только так, постепенно, с обратной связью от преподавателя, создавая проект на Angular, вы действительно разберётесь, что и как.

Результат обучения

  1. Вы знаете, как быстро сделать прототип проекта, а после чего превратить его в большое структурное веб приложение, стабильно работающее и не имеющее проблем с производительностью, легко расширяемое и поддерживаемое.
  2. Вы хорошо понимаете тонкости компонентного подхода Angular. Можете создавать и отлаживать сложные компоненты (приложения) и решать любую бизнес задачу.
  3. Вы знаете как использовать разные архитектурные подходы для построения Angular приложений.
  4. Вы эффективно работаете как с фреймворком, так и со всей Angular экосистемой.
  5. Понимаете структуру исходного кода и ориентируетесь в нем.

Гарантия

  • Если объяснения будут вам непонятны
  • Если курсы не дадут вам новых знаний и умений
  • Если вы не сможете подключиться к системе онлайн-обучения

…то вы сможете получить деньги назад.

Для этого достаточно не позже окончания первой недели курса написать, указав причину из этого списка и что именно вас не устраивает, и тогда ваше участие будет прекращено, а вы получите деньги обратно, удобным для вас способом.

Преподаватели

Photo
Игорь Непипенко

Занимаюсь современной frontend-разработкой с использованием Angular с 2013 года. С 2016 года веду обучение Javascript, Typescript и Angular. Также имею большой опыт преподавания математических дисциплин в ВУЗе.

Также работаю как Team/Tech Lead в разработке enterprise-приложений для CША, а также приложения для работы с блокчейн, например система для рекламы, основанная на цифровой валюте cresttoken.com. Предпочитаю стек MEAN.

Photo
Степан Суворов

JavaScript разработчик и консультант, спикер, активный участник фронтенд сообщества. Занимаюсь программированием более 14 лет(из них 9 лет страстно увлечен JavaScript, 6 лет исследований и экспериментов с Angular).

CTO @ StudyTube, https://studytube.nl.

Что говорят о курсе участники

Дополнительная информация

  • Для участия в этом курсе необходимо знание JavaScript.

  • Windows, Mac, Linux поддерживаются.

    Для онлайн-общения желателен интернет от 256kb/s.

Комментарии

перед тем как писать…
  • Если вам кажется, что в статье что-то не так - вместо комментария напишите на GitHub.
  • Для одной строки кода используйте тег <code>, для нескольких строк кода — тег <pre>, если больше 10 строк — ссылку на песочницу (plnkr, JSBin, codepen…)
  • Если что-то непонятно в статье — пишите, что именно и с какого места.