stringtranslate.com

Angular (веб-фреймворк)

Angular (также известный как « Angular 2+ ») [4] — это бесплатный и открытый исходный код одностраничного веб-приложения на основе TypeScript . Он разработан Google и сообществом отдельных лиц и корпораций. Angular — это полностью переписанный проект той же команды, которая создала AngularJS . Экосистема Angular состоит из разнообразной группы из более чем 1,7 миллиона разработчиков, авторов библиотек и создателей контента. [5] Согласно опросу разработчиков Stack Overflow, Angular является одним из наиболее часто используемых веб-фреймворков. [6]

Различия между Angular и AngularJS

Архитектура приложения Angular, сервисы и внедрение зависимостей

Google разработал Angular как полностью переписанный AngularJS. В отличие от AngularJS, Angular не имеет концепции «области действия» или контроллеров; вместо этого он использует иерархию компонентов в качестве своей основной архитектурной характеристики. [7] Angular имеет другой синтаксис выражений, фокусирующийся на "[ ]"связывании свойств и "( )"связывании событий . [8] Angular рекомендует использовать язык TypeScript от Microsoft , который вводит такие функции, как статическая типизация , обобщения и аннотации типов .

Функции

Архитектура на основе компонентов

Angular использует архитектуру на основе компонентов , которая позволяет разработчикам создавать инкапсулированные, повторно используемые элементы пользовательского интерфейса. Каждый компонент инкапсулирует свой собственный HTML , CSS и TypeScript, что упрощает управление и тестирование отдельных частей приложения. [9]

Привязка данных

Angular поддерживает двустороннюю привязку данных, которая синхронизирует данные между моделью и представлением. Это гарантирует, что любые изменения в представлении автоматически отражаются в модели и наоборот. [10]

Внедрение зависимости

Angular имеет встроенную систему внедрения зависимостей , которая упрощает управление и внедрение зависимостей в компоненты и сервисы. Это способствует модульности и более легкому тестированию. [11]

Директивы

Angular расширяет HTML дополнительными атрибутами, называемыми директивами. Директивы предлагают функциональность для изменения поведения или внешнего вида элементов DOM . [12]

Маршрутизация

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

Угловой CLI

Angular CLI ( Command Line Interface ) предоставляет набор инструментов для создания, сборки, тестирования и развертывания приложений Angular. Он обеспечивает быструю настройку приложений и упрощает текущие задачи разработки. [14]

Рендеринг на стороне сервера

Angular имеет официальную поддержку рендеринга на стороне сервера, что улучшает время загрузки и производительность приложения. Рендеринг на стороне сервера также улучшает поисковую оптимизацию, делая контент более доступным для веб-краулеров. [15]

История

Angular 2.0 был анонсирован на конференции ng-Europe 22–23 октября 2014 года. [16] 30 апреля 2015 года разработчики Angular объявили, что Angular 2 перешел из стадии Alpha в стадию Developer Preview. [17] Angular 2 перешел в стадию Beta в декабре 2015 года, [18] а первый релиз-кандидат был опубликован в мае 2016 года. [19] Финальная версия была выпущена 14 сентября 2016 года.

В версии 8 Angular появился новый конвейер компиляции и рендеринга Ivy, а в версии 9 Angular Ivy был включен по умолчанию. В Angular 13 был удален устаревший прежний компилятор View Engine. [20]

Нейминг

Переписанный AngularJS был назван "Angular 2", но это привело к путанице среди разработчиков. Чтобы прояснить ситуацию, команда объявила, что для каждого фреймворка следует использовать отдельные имена, при этом " AngularJS " будет относиться к версиям 1.X, а "Angular" без "JS" — к версиям 2 и выше. [21]

История версий

Будущие релизы

Начиная с версии 9, команда Angular перевела все новые приложения на использование компилятора и среды выполнения Ivy. Они будут работать над Ivy, чтобы улучшить размеры выходных пакетов и скорость разработки. [35]

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

Политика и график поддержки

Все основные релизы поддерживаются в течение 18 месяцев. Это состоит из 6 месяцев активной поддержки, в течение которых регулярно выпускаются запланированные обновления и исправления. Затем следуют 12 месяцев долгосрочной поддержки (LTS), в течение которых выпускаются только критические исправления и исправления безопасности. [36]

Версии Angular v2–v15 больше не поддерживаются. [37]

Библиотеки

Угловой материал

Angular Material — это библиотека компонентов пользовательского интерфейса , реализующая Material Design в Angular. [38] Она предоставляет набор повторно используемых компонентов, которые соответствуют спецификациям Material Design от Google, стремясь предложить единообразный пользовательский интерфейс на разных устройствах и платформах.

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

Угловые элементы

В 2018 году в Angular 6 были представлены элементы Angular, позволяющие разработчикам упаковывать компоненты Angular в виде пользовательских веб-элементов, которые являются частью набора веб-компонентов API веб-платформы. [39]

Смотрите также

Ссылки

  1. ^ "Angular, версия 2: proprioception-reinforcement". blogspot.com . 14 сентября 2016 г. Архивировано из оригинала 2017-03-12 . Получено 2017-03-18 .
  2. ^ "Выпуск 18.2.8". 10 октября 2024 г. Получено 21 октября 2024 г.
  3. ^ "angular/CHANGELOG.md". GitHub . Получено 2024-08-14 .
  4. ^ «AngularJS и Angular 2+: подробное сравнение». 6 апреля 2018 г.
  5. ^ "Angular". angular.io . Получено 2024-03-26 .
  6. ^ "Опрос разработчиков Stack Overflow 2023". Stack Overflow . Получено 2024-06-02 .
  7. ^ "Angular Docs". angular.io .
  8. ^ «В чем разница между AngularJS и Angular?». gorrion.io . 19 сентября 2017 г. . Получено 28.01.2018 .
  9. ^ "Составление с компонентами · Angular". angular.dev . Получено 2024-06-02 .
  10. ^ "Понимание привязки · Angular". angular.dev . Получено 2024-06-02 .
  11. ^ "Внедрение зависимостей в Angular". angular.dev . Получено 2024-06-02 .
  12. ^ "Директивы · Обзор · Angular". angular.dev . Получено 2024-06-02 .
  13. ^ "Маршрутизация · Обзор · Angular". angular.dev . Получено 2024-06-02 .
  14. ^ "Angular CLI · Обзор · Angular". angular.dev . Получено 2024-06-02 .
  15. ^ Żurawski, Paweł (2024-05-09). "Angular SSR: Руководство по реализации рендеринга на стороне сервера". Pretius . Получено 2024-07-17 .
  16. ^ "Расписание Ng-Europe". Архивировано из оригинала 2018-04-30 . Получено 2018-04-29 .
  17. ^ @angularjs (30 апреля 2015 г.). "Angular 2 переходит из стадии Alpha в стадию Developer Preview! Руководство разработчика и документация по API теперь доступны на ... angular.io/docs/js/latest" ( твит ) . Получено 21 октября 2015 г. – через Twitter .
  18. ^ "Angular: Angular 2 Beta". angularjs.blogspot.it . Архивировано из оригинала 2015-12-18 . Получено 2016-07-13 .
  19. ^ "angular/angular". GitHub . Получено 2016-05-04 .
  20. ^ Томпсон, Марк (2021-11-04). "Angular v13 теперь доступен". Блог Angular . Получено 2024-06-02 .
  21. ^ "Angular: Branding Guidelines for AngularJS". Архивировано из оригинала 2017-02-04 . Получено 2017-03-04 .
  22. ^ Гечев, Минко (2024-05-23). ​​"Angular v18 теперь доступен!". Medium . Получено 2024-06-02 .
  23. ^ ab Gechev, Minko (8 ноября 2023 г.). "Introducing Angular v17". Medium . Angular Blog . Получено 12 ноября 2023 г. .
  24. ^ Гечев, Минко (21.11.2022). "Angular v15 уже доступен!". Блог Angular . Получено 02.06.2024 .
  25. ^ Томпсон, Марк (4 ноября 2021 г.). «Angular v13 теперь доступен». Блог Angular . Получено 10 января 2022 г.
  26. ^ Томпсон, Марк (2021-05-12). "Angular v12 теперь доступен". Medium . Получено 2021-05-17 .
  27. ^ «Версия 11 Angular уже доступна». 4 декабря 2020 г.
  28. ^ «Версия 10 Angular уже доступна». 25 июня 2020 г.
  29. ^ Fluin, Stephen (2019-02-08). "План для версии 8.0 и Ivy". Блог Angular . Получено 2019-06-07 .
  30. ^ Fluin, Stephen (18.10.2018). «Версия 7 Angular — CLI Prompts, Virtual Scroll, Drag and Drop и многое другое». Блог Angular . Получено 07.06.2019 .
  31. ^ "Версия 6.0.0 Angular уже доступна" . Получено 4 мая 2018 г. .
  32. ^ Флуин, Стивен. «Версия 5.0.0 Angular уже доступна» . Получено 2 ноября 2017 г.
  33. ^ "Выпуск JavaScript-фреймворка Angular 5 задерживается". 18 сентября 2017 г.
  34. ^ "Angular 4.0.0 уже доступен". angularjs.blogspot.ca . Архивировано из оригинала 2018-01-08 . Получено 2017-03-23 ​​.
  35. ^ Флуин, Стивен (6 февраля 2020 г.). «Версия 9 Angular уже доступна — Project Ivy уже здесь!». blog.angular.io . Получено 22 марта 2022 г. .
  36. ^ "Angular". angular.io . Получено 2019-06-07 .
  37. ^ "Angular". angular.io . Получено 2022-06-10 .
  38. ^ "Angular Material". material.angular.io .
  39. ^ «Как создать пользовательские элементы и веб-компоненты Angular 6». 29 сентября 2018 г.

Внешние ссылки