Angular.JS (Степан Суворов)
Первая часть курса:
Быстрый старт с AngularJS
Общая структура фреймворка.
Встроенные директивы и шаблонизация в AngularJS.
Двустороннее связывание.
Создание своих директив.
Вложенные директивы, наследование и передачи scope.
Компонентный подход
Переход от директив к компонентам
Метод .component
Использование контроллера компонента
Рекомендуемая EcmaScript2015 структура
Сервисы
Организация service provider'ов и зависимостей.
Встроенные сервисы AngularJS.
Написание своих сервисов, отличия между реализациями провайдера.
Специфика работы с $http сервисом
Переопределение и расширение сторонних сервисов. Использование декораторов
Модель, директива ng-model.
Удобная валидация форм, встроенные и свои директивы.
Импорт контроллера директивы и использование ng-model контроллера
Автоматичский показ ошибок, ng-message.
Навигация и маршрутизация
Роутер ui-router
Управление состояниями: $state и $stateProvider.
Вспомогательные директивы ui-router
Множественные view и вложенные стейты
Предзагрузка данных по средством resolve
По окончанию первой части курса вы понимаете, как разработать на AngularJS несложное приложение для вывода и редактирования данных.
Вторая часть курса:
Авторизация в приложении
Интерфейс для авторизации на AngularJS
Интерцептор для проверки прав.
Роль роутера в ограничеснии прав доступа
Организация приложения на диске
Файловая структура.
Модульный и компонентный подход.
WebPack для сборки.
Автоматизированные тесты
Unit-тесты и TDD (вместе с jasmine и karma).
Система сборки для тестов (karma + webpack)
Специфика тестирования сервисов, контроллеров и директив
Функциональные(e2e) тесты с использованием protractor
Третья часть курса:
Проверка курсовых проектов
Отладка приложения
разбор сущностей AngularJS в консоли
обзор вспомогательных инструментов
Более сложные директивы
Использование сервиса $compile.
вложенные директивы с transclude.
Интеграция со сторонними модулями
Сторонние плагины, не знающие про AngularJS
$scope.watch
$scope.apply
События, ng-events на $scope
Возможные проблемы и их решение
$watch и проблемы производительности
Серверный рендеринг, поисковики
Подгрузка модулей на лету
AngularJS и Drag'n'Drop
Краткая информация про Angular 2.0
Подготовка структуры проекта к Angular 2.0