4. Angular?
Cтруктурный фреймворк предназначенный для
построения динамических web-приложений.
Позволяет расширить возможности и синтаксис
существующего HTML.
2014. AngularJS. Anton Gordiichuk
6. Задачи
• расширение возможностей HTML
• создание простой и четкой структуры приложения
• выполнение низкоуровневых задач за Вас
• тесты пользовательских компонентов
• интеграция с другими фреймворками
2014. AngularJS. Anton Gordiichuk
7. Когда целесообразно
использовать?
• rich-ui приложения
• single-page приложения
• REST-oriented приложения
2014. AngularJS. Anton Gordiichuk
9. Доступно из коробки
• двухсторонние связывание данных
• внедрение зависимостей (DI)
• более 60 готовых деректив
• более 25 разнообразных сервисов
• фильтры
• утилиты
2014. AngularJS. Anton Gordiichuk
10. Производительность
Angular создает минимум накладных расходов, и
поэтому в плане производительности находится на
достаточно высоком уровне.
2014. AngularJS. Anton Gordiichuk
16. Внедрение зависимостей
• оператор new
• ссылка на глобальную переменную
• передача зависимости туда где она нужна
2014. AngularJS. Anton Gordiichuk
17. DI в AngularJS
Для управления зависимостями в каждом
AngularJS приложении существует свой сервис
локатор - инжектор.
Задача инжектора - управление жизненным циклом
объектов, внедрение зависимостей.
2014. AngularJS. Anton Gordiichuk
18. Создание и поиск зависимостей
Instance cache Instance factory
$injector.get(‘dep’)
check cache
create new
if no cache
$injector
2014. AngularJS. Anton Gordiichuk
19. Где можно использовать
DI?
• в модулях
• в контроллерах
• в фабричных методах (директивы, сервисы,
фильтры)
2014. AngularJS. Anton Gordiichuk
21. Контроллер?
JavaScript функция с собственной областью
видимости предназначенная для описания бизнес-
логики приложения.
2014. AngularJS. Anton Gordiichuk
23. Для чего НЕ стоит
использовать
контроллеры?
• манипуляций с DOM
• форматирования ввода-вывода
• передачи состояния другим контроллерам
• управления жизненным циклом других
компонентов
2014. AngularJS. Anton Gordiichuk
24. Способы ассоциации
контроллера с $scope
• директива ng-controller
• сервис $routeProvider
2014. AngularJS. Anton Gordiichuk
27. Директива?
Одна с ключевых компонент фреймворка.
Директивы позволяют задавать определенное
поведение элементам к которым они применяются.
2014. AngularJS. Anton Gordiichuk
28. Способы объявления
директив
• HTML тег
• HTML аттрибут
• HTML комментарий
• HTML класс
2014. AngularJS. Anton Gordiichuk
32. Сервис?
Взаимозаменяемые компоненты выполняющие
определенные задачи в рамках web-приложения.
• ленивая инициализация
• одиночка
2014. AngularJS. Anton Gordiichuk
33. Как пользоваться
сервисами?
Очень просто. Передайте сервис как зависимость в
одну из компонент (контроллер, фильтр,
директиву, другой сервис) и система внедрения
зависимостей позаботится об остальном.
2014. AngularJS. Anton Gordiichuk
35. Сервисы AngularJS
Фреймворк поставляется с набором уже готовых к
использованию сервисов. Например $http (работа с
XmlHttpRequest), $route (маршрутизация) и тд.
2014. AngularJS. Anton Gordiichuk
37. Шаблон?
Статическая DOM структура состоящая из HTML,
CSS, а также специальных элементов и атрибутов
которые позволяют AngularJS преобразовать
статические страницы в динамическое web-
приложения.
2014. AngularJS. Anton Gordiichuk
38. В шаблонах можно
использовать
• директивы
• фильтры
• интерполяционный скобки {{ }}
• элементы форм
2014. AngularJS. Anton Gordiichuk