AngularJS - Обзор
AngularJS - это фреймворк для веб-приложений с открытым исходным кодом. Первоначально он был разработан в 2009 году Миско Хевери и Адамом Абронсом. Сейчас он поддерживается Google. Его последняя версия - 1.2.21.
Определение AngularJS в его официальной документации выглядит следующим образом:
AngularJS - это структурная структура для динамических веб-приложений. Он позволяет использовать HTML в качестве языка шаблонов и позволяет расширять синтаксис HTML для четкого и лаконичного представления компонентов приложения. Связывание данных и внедрение зависимостей устраняют большую часть кода, который вам в настоящее время приходится писать. И все это происходит в браузере, что делает его идеальным партнером для любой серверной технологии.
Общие особенности
Общие особенности AngularJS следующие:
AngularJS - это эффективный фреймворк, который может создавать богатые интернет-приложения (RIA).
AngularJS предоставляет разработчикам возможность писать клиентские приложения с использованием JavaScript с использованием чистого контроллера представления модели (MVC).
Приложения, написанные на AngularJS, совместимы с кроссбраузерностью. AngularJS автоматически обрабатывает код JavaScript, подходящий для каждого браузера.
AngularJS - это открытый исходный код, полностью бесплатный и используется тысячами разработчиков по всему миру. Он находится под лицензией Apache версии 2.0.
В целом AngularJS - это платформа для создания крупномасштабных, высокопроизводительных и простых в обслуживании веб-приложений.
Основные особенности
Основные особенности AngularJS следующие:
Data-binding - Это автоматическая синхронизация данных между компонентами модели и представления.
Scope- Это объекты, относящиеся к модели. Они действуют как клей между контроллером и представлением.
Controller - Это функции JavaScript, привязанные к определенной области.
Services- AngularJS поставляется с несколькими встроенными службами, такими как $ http, для создания XMLHttpRequests. Это одноэлементные объекты, экземпляры которых создаются в приложении только один раз.
Filters - Они выбирают подмножество элементов из массива и возвращают новый массив.
Directives- Директивы - это маркеры элементов DOM, таких как элементы, атрибуты, CSS и т. Д. Их можно использовать для создания настраиваемых тегов HTML, которые служат в качестве новых настраиваемых виджетов. AngularJS имеет встроенные директивы, такие как ngBind, ngModel и т. Д.
Templates- Это визуализированный вид с информацией от контроллера и модели. Это может быть один файл (например, index.html) или несколько представлений на одной странице с использованием частичных файлов .
Routing - Это концепция переключения взглядов.
Model View Whatever- MVW - это шаблон проектирования для разделения приложения на различные части, называемые моделью, представлением и контроллером, каждая из которых имеет свои обязанности. AngularJS не реализует MVC в традиционном смысле, а скорее что-то более близкое к MVVM (Model-View-ViewModel). Команда Angular JS с юмором называет это Model View Whatever.
Deep Linking- Глубокие ссылки позволяют кодировать состояние приложения в URL-адресе, чтобы его можно было добавить в закладки. Затем приложение может быть восстановлено из URL-адреса в то же состояние.
Dependency Injection - AngularJS имеет встроенную подсистему внедрения зависимостей, которая помогает разработчику легко создавать, понимать и тестировать приложения.
Концепции
На следующей диаграмме показаны некоторые важные части AngularJS, которые мы подробно обсудим в следующих главах.
Преимущества AngularJS
Преимущества AngularJS:
Он предоставляет возможность создавать одностраничные приложения очень простым и удобным способом.
Он обеспечивает возможность привязки данных к HTML. Таким образом, это дает пользователю богатый и отзывчивый опыт.
Код AngularJS можно тестировать.
AngularJS использует внедрение зависимостей и использует разделение проблем.
AngularJS предоставляет компоненты многократного использования.
С AngularJS разработчики могут достичь большей функциональности с помощью короткого кода.
В AngularJS представления представляют собой чистые html-страницы, а контроллеры, написанные на JavaScript, выполняют бизнес-обработку.
Помимо всего прочего, приложения AngularJS могут работать во всех основных браузерах и смартфонах, включая телефоны / планшеты на базе Android и iOS.
Недостатки AngularJS
Хотя AngularJS имеет множество достоинств, вот некоторые моменты, вызывающие беспокойство:
Not Secure- Будучи фреймворком только для JavaScript, приложения, написанные на AngularJS, небезопасны. Аутентификация и авторизация на стороне сервера необходимы для обеспечения безопасности приложения.
Not degradable - Если пользователь вашего приложения отключит JavaScript, то ничего не будет видно, кроме базовой страницы.
Директивы AngularJS
Фреймворк AngularJS можно разделить на три основные части:
ng-app - Эта директива определяет и связывает приложение AngularJS с HTML.
ng-model - Эта директива связывает значения данных приложения AngularJS с элементами управления вводом HTML.
ng-bind - Эта директива связывает данные приложения AngularJS с тегами HTML.