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

Ця стаття про Angular. Про AngularJS 1.x див. AngularJS.
Angular
Тип бібліотека JavaScript, Односторінковий застосунок
Розробник Google та спільнота.
Перший випуск 14 вересня, 2016; 7 років тому (2016-09-14)[1]
Стабільний випуск 17.3.9 (15 травня, 2024; 17 днів тому (2024-05-15)[2])
Операційна система Мультиплатформний
Мова програмування TypeScript
Стан розробки Активний
Ліцензія MIT License
Репозиторій github.com/angular/angular
Вебсайт angular.io

Angular (також відомий як "Angular 2+")[3] - це безкоштовний фреймворк односторінкових веб-додатків на основі TypeScript з відкритим вихідним кодом, що працює на Node.js. Його розробкою займається Angular Team у складі Google, а також спільнота приватних осіб і корпорацій. Angular повністю переписаний тією ж командою, яка створила AngularJS. Екосистема Angular складається з різноманітної групи з понад 1.7 мільйона розробників, авторів бібліотек та творців контенту.[4]

Історія

Назва

Спочатку переписаний AngularJS отримав назву Angular 2 від команди розробників, яка над ним працювала, але це призвело до плутанини серед інших розробників. Аби пояснити різницю між ними та наголосити, що це окремі проекти, команда вирішила для фреймворків версій 1.X застосовувати назву AngularJS, а для версій, починаючи з 2.0, — Angular без JS.[5]

Основні відмінності між Angular та AngularJS

Архітектура додатка на Angular. Основними елементами в розробці є модулі, компоненти, шаблони, метадані, біндінг даних, директиви, сервіси та ін'єкції залежностей.

Як згадано вище, Angular — це ретельно переписаний AngularJS.

  • Додано Angular CLI, що дає змогу розпочати створення нового додатка, просто написавши команду ng new [app name][6]
  • Angular не використовує концепцію "області видимості" або контролерів, натомість як головну архітектурну концепцію він застосовує ієрархію компонентів
  • Angular має інакший синтаксис написання виразів, застосовуючи "[ ]" для біндінгу даних властивостей, і "( )" для біндінгу даних івентів[7]
  • Модульність – значна частина основного функціоналу перенесена у модулі
  • Angular рекомендує та застосовує розроблену Microsoft мову — TypeScript, що містить такі можливості, як:
  • TypeScript — надмножина ECMAScript 6 (ES6), і є зворотно сумісним зі стандартом ECMAScript 5 (тобто JavaScript).

Angular також має такі ES6-можливості, як:

  • Динамічне завантаження
  • Асинхронна компіляція шаблонів
  • Заміна контролерів та $scope(області видимості) компонентами та директивами – компонент є директивою з шаблоном
  • Ітеративні колбеки завдяки використанню RxJS [Архівовано 17 травня 2021 у Wayback Machine.]. RxJS дещо обмежує видимість станів та можливості дебагінгу, але, застосовуючи такі плагіни, як ngReact [Архівовано 18 серпня 2021 у Wayback Machine.] та ngrx [Архівовано 18 серпня 2021 у Wayback Machine.], це легко вирішується.

Майбутні версії

Починаючи з 9 версії Angular всі нові програми використовують компілятор Ivy [Архівовано 18 серпня 2021 у Wayback Machine.]. Тож команда Angular працюватиме над покращенням цього компілятора, що в свою чергу має призвести до зменшення загального розміру пакунка. Очікується, що кожна наступна версія буде зворотно сумісною з попередньою. Google також обіцяє публікувати оновлення двічі на рік.

Статистика користування Angular

Angular з кожним роком зростає у популярності. Станом на серпень 2020, кожного дня завантажується близько 1,5 мільйонів Angular/core, та подвоюється кожен рік[8].

Стистика завантажень Angular за останні 5 років.

Технологія Angular використовується у вебдодатках таких компаній:[9]

На ринку програмних фреймворків Angular займає 2 позицію після ASP.NET, що займають 9,18% та 44,9% відповідно[10].

Див. також

  • Official website [Архівовано 15 листопада 2019 у Wayback Machine.]
  • Archived website (Angular 2) [Архівовано 27 березня 2022 у Wayback Machine.]
  • Angular User Registration and Login Tutorial [Архівовано 30 січня 2018 у Wayback Machine.]

Джерела

  1. Trigular, version 2: proprioception-reinforcement. blogspot.com. 14 вересня 2016. Архів оригіналу за 12 березня 2017. Процитовано 28 січня 2018.
  2. angular/CHANGELOG.md at main · angular/angular. GitHub (англ.). Процитовано 20 травня 2024.
  3. AngularJS and Angular 2+: a Detailed Comparison. 6 April 2018.
  4. Angular. angular.io. Процитовано 26 березня 2024.
  5. Angular: Branding Guidelines for AngularJS. Архів оригіналу за 9 січня 2018. Процитовано 28 січня 2018.
  6. angular / angular-cli. GitHub. Архів оригіналу за 24 жовтня 2017. Процитовано 28 січня 2018.
  7. What’s the difference between AngularJS and Angular?. gorrion.io. 19 вересня 2017. Архів оригіналу за 5 березня 2020. Процитовано 28 січня 2018.
  8. NPM Trends: Compare NPM package downloads. www.npmtrends.com (англ.). Архів оригіналу за 16 січня 2021. Процитовано 16 серпня 2020.
  9. 15 Surprising Stats About Angular. Stay on top with the latest tech trends (англ.). 27 липня 2020. Архів оригіналу за 9 серпня 2020. Процитовано 16 серпня 2020.
  10. Top 5 products in the Software Frameworks market. enlyft.com (англ.). Процитовано 16 серпня 2020.


  • п
  • о
  • р
Платформи
Фреймворки
Бібліотеки
Мови
Хости