Архитектура приложения Angular, сервисы и внедрение зависимостей
Google разработал Angular как переписанный с нуля AngularJS.
В Angular нет понятия «область действия» или контроллеров; вместо этого он использует иерархию компонентов в качестве основной архитектурной характеристики. [5]
Angular имеет другой синтаксис выражений, ориентированный на "[ ]"привязку свойств и "( )"привязку событий [6] .
Модульность – большая часть основных функций перенесена в модули.
Angular рекомендует использовать язык TypeScript от Microsoft , который предоставляет следующие возможности:
Angular 2.0 был анонсирован на конференции ng-Europe 22–23 октября 2014 года. [7] [8] Кардинальные изменения в версии 2.0 вызвали серьезные споры среди разработчиков. [9] 30 апреля 2015 года разработчики Angular объявили, что Angular 2 перешёл из Alpha в версию Developer Preview. [10] Angular 2 перешёл в бета-версию в декабре 2015 года, [11] а первый релиз-кандидат был опубликован в мае 2016 года. [12] Финальная версия была выпущена 14 сентября 2016 года.
13 декабря 2016 года был анонсирован Angular 4, в котором пропущена цифра 3, чтобы избежать путаницы из-за несовпадения версии пакета маршрутизатора, которая уже распространялась как v3.3.0. [13] Финальная версия вышла 23 марта 2017 года. [14]
Представляем HttpClient — меньшую по размеру, более простую в использовании и более мощную библиотеку для выполнения HTTP-запросов.
Новые события жизненного цикла маршрутизатора для охранников и резольверов. Четыре новых события: GuardsCheckStart , GuardsCheckEnd , ResolveStart , ResolveEnd присоединяются к существующему набору событий жизненного цикла, таким как NavigationStart.
Условно отключить анимацию.
Angular 6 был выпущен 4 мая 2018 года. [15] Это основной выпуск, ориентированный не столько на базовую структуру, сколько на цепочку инструментов, а также на упрощение быстрого перехода к Angular в будущем, например ng update, ng add, Angular. Элементы, Angular Material + компоненты CDK, начальные компоненты Angular Material, рабочие области CLI, поддержка библиотек, поставщики Tree Shakable, улучшения производительности анимации и RxJS v6.
18 октября 2018 года был выпущен Angular 7. В этой версии были обновления, касающиеся производительности приложений, Angular Material и CDK, виртуальной прокрутки, улучшенной доступности выборок, теперь поддерживается проекция контента с использованием веб-стандарта для пользовательских элементов, а также обновления зависимостей относительно Typescript 3.1, RxJS 6.3, Node 10 (все еще поддерживает Node 8). . [16]
Angular 8 был выпущен 28 мая 2019 года. Он включает дифференциальную загрузку для всего кода приложения, динамический импорт для отложенных маршрутов, веб-работников, поддержку TypeScript 3.4 и Angular Ivy в качестве предварительной версии по согласию. Предварительная версия Angular Ivy включает в себя: [17]
Сгенерированный код, который легче читать и отлаживать во время выполнения.
Более быстрое время восстановления
Улучшен размер полезной нагрузки
Улучшена проверка типа шаблона.
Обратная совместимость
Angular 17 был выпущен 8 ноября 2023 года. Некоторые новые функции включают новый конструктор приложений, новый синтаксис для потока управления, переработанный веб-сайт обучения и документации и многое другое. [18]
Именование
Переписанная версия AngularJS называлась «Angular 2», но это привело к путанице среди разработчиков. Чтобы внести ясность, команда объявила, что для каждой платформы следует использовать отдельные имена, где « AngularJS » относится к версиям 1.X, а «Angular» без «JS» относится к версиям 2 и выше. [19]
История версий
Будущие выпуски
Начиная с версии 9, команда Angular перевела все новые приложения на использование компилятора и среды выполнения Ivy. Они будут работать над Ivy, чтобы улучшить размеры выходных пакетов и скорость разработки. [26]
Ожидается, что каждая версия будет обратно совместима с предыдущей версией. Команда разработчиков Angular обязалась делать обновления два раза в год.
Политика и график поддержки
Все основные выпуски поддерживаются в течение 18 месяцев. Это 6 месяцев активной поддержки, в течение которых регулярно выпускаются обновления и исправления. Затем следует 12 месяцев долгосрочной поддержки (LTS), в течение которых выпускаются только критические исправления и исправления безопасности. [27]
Версии Angular от v2 до v14 больше не поддерживаются. [28]
В 2018 году в Angular 6 были представлены элементы Angular, которые позволяют упаковывать ваши компоненты Angular в виде пользовательских веб-элементов, которые являются частью набора веб-компонентов API-интерфейсов веб-платформы. [30]
^ «Угловой, версия 2: усиление проприоцепции». blogspot.com . 14 сентября 2016 г. Архивировано из оригинала 12 марта 2017 г. Проверено 18 марта 2017 г.
^ «Выпуск 17.1.2». 31 января 2024 г. Проверено 1 февраля 2024 г.
^ "Угловой/CHANGELOG.md". Гитхаб . Проверено 15 ноября 2023 г.
^ «AngularJS и Angular 2+: подробное сравнение». 6 апреля 2018 г.
^ «Угловые документы». angular.io .
^ «В чем разница между AngularJS и Angular?». gorrion.io . 19 сентября 2017 года . Проверено 28 января 2018 г.
↑ Гамильтон, Коман (28 октября 2014 г.). «Краткий обзор радикально нового Angular 2.0» . Проверено 21 октября 2015 г.
^ "Расписание Ng-Европы" . Архивировано из оригинала 30 апреля 2018 г. Проверено 29 апреля 2018 г.
↑ Гамильтон, Коман (29 октября 2014 г.). «Объявление об Angular 2.0 имеет неприятные последствия» . Проверено 21 октября 2015 г.
^ @angularjs (30 апреля 2015 г.). «Angular 2 переходит из альфа-версии в версию Developer Preview! Руководство для разработчиков и документация по API теперь доступны по адресу… angular.io/docs/js/latest» (твит) . Проверено 21 октября 2015 г. - через Twitter .
^ «Angular: Бета-версия Angular 2» . angularjs.blogspot.it . Архивировано из оригинала 18 декабря 2015 г. Проверено 13 июля 2016 г.
^ «угловой/угловой». Гитхаб . Проверено 4 мая 2016 г.
^ «Хорошо... позвольте мне объяснить: это будет Angular 4.0». angularjs.blogspot.kr . Архивировано из оригинала 16 октября 2017 г. Проверено 14 декабря 2016 г.
^ ab «Угловая версия 4.0.0 теперь доступна». angularjs.blogspot.ca . Архивировано из оригинала 08 января 2018 г. Проверено 23 марта 2017 г.
^ ab «Теперь доступна версия 6.0.0 Angular» . Проверено 4 мая 2018 г.
^ аб Флюин, Стивен (18 октября 2018 г.). «Версия 7 Angular — подсказки CLI, виртуальная прокрутка, перетаскивание и многое другое». Угловой блог . Проверено 7 июня 2019 г.
^ аб Флюин, Стивен (08 февраля 2019 г.). «План для версии 8.0 и Ivy». Угловой блог . Проверено 7 июня 2019 г.
^ abc Гечев, Минко (8 ноября 2023 г.). «Представляем Angular v17». Середина . Угловой блог . Проверено 12 ноября 2023 г.
^ «Angular: Рекомендации по брендингу AngularJS» . Архивировано из оригинала 4 февраля 2017 г. Проверено 4 марта 2017 г.
↑ Томпсон, Марк (4 ноября 2021 г.). «Angular v13 теперь доступен». Угловой блог . Проверено 10 января 2022 г.
^ Томпсон, Марк (12 мая 2021 г.). «Angular v12 теперь доступен». Середина . Проверено 17 мая 2021 г.
^ «Теперь доступна версия 11 Angular» . 4 декабря 2020 г.
^ «Теперь доступна версия 10 Angular» . 25 июня 2020 г.
^ Флюин, Стивен. «Доступна версия Angular 5.0.0» . Проверено 2 ноября 2017 г.
^ «Выпуск JavaScript-фреймворка Angular 5 задерживается» . 18 сентября 2017 г.
↑ Флюин, Стивен (6 февраля 2020 г.). «9-я версия Angular уже доступна — появился проект Ivy!». blog.angular.io . Проверено 22 марта 2022 г.
^ «Угловой». angular.io . Проверено 7 июня 2019 г.
^ «Угловой». angular.io . Проверено 10 июня 2022 г.
^ «Угловой материал». материал.angular.io .
^ «Как создавать пользовательские элементы и веб-компоненты Angular 6» . 29 сентября 2018 г.