Логотип
БизнесуРазработчикам

Angular для бизнеса: возможности, история и границы применения

Артем Салютин

Директор по развитию

Angular — одна из трех главных фронтенд-технологий наряду с React и Vue. У нее мощная инженерная база и репутация «корпоративного» фреймворка. Из-за нестабильного развития он утратил доверие большого числа специалистов, доступность кадров стала проблемой. Бизнесу подходит, когда уже есть команда или большая кодовая база на этом фреймворке. С нуля лучше выбирать React, который при правильном подходе позволяет создавать системы под высокие требования. WS Dev сопровождает уже существующие проекты, в том числе на AngularJS. Разберем, что он умеет, откуда взялся и кому подходит в 2026 году.

Что такое Angular простыми словами

Angular — фреймворк для веб-приложений, который развивает Google. Технология дает готовый каркас: маршрутизацию, работу с формами, обращение к серверу, управление состоянием — все то, что на голом JavaScript пришлось бы собирать вручную.

Технологию проще сравнить с готовым цехом, а не с одним станком. Если React дает просто библиотеку для отрисовки, где все остальное нужно настраивать отдельно, Vue — фреймворк с минимальным ядром и набором дополнительных инструментов, то Angular поставляет все и сразу, но и осваивать приходится всю систему целиком, а не одну библиотеку. Такой объем нужен далеко не каждому проекту.

Какую проблему решает

Любое веб-приложение сводится к маршаллингу, то есть перекладыванию данных туда-сюда: из базы на экран пользователю и обратно в базу. Каждая форма, таблица, каждый экран со списком требует многократного переноса данных. В эпоху ручной верстки интерфейсов, разработчику приходилось заниматься этим переносом целыми днями.

Идея, из которой вырос Angular, была такой: а что если расширить «словарь» HTML — добавить свои атрибуты и теги, чтобы связывать интерфейс с данными прямо в разметке, не описывая эту связку кодом вручную. Ранняя демонстрация AngularJS выглядела как фокус: печатаешь в поле — текст тут же отражается на странице задом наперед, и все это без единой строчки JavaScript, только разметка. На фоне jQuery, где то же самое требовало заметного объема кода началась популярность фреймворка.

Экосистема Angular

Краткая история: кто и зачем это сделал, и что пошло не так

Небольшая команда Google разрабатывала внутренний инструмент сбора отзывов о продуктах компании и месяцами мучилась с интерфейсами. Разработчик Мишко Хевери пообещал переписать все за две недели. Коллеги знали его как сильного специалиста по Java, а не как знатока JavaScript, но решили дать шанс. Так появился Vanilla Binder, будущий AngularJS.

По первоначальной задумке это был инструмент для дизайнеров, которые не умеют программировать, а только знают HTML. Инструмент давал дополнительные теги и атрибуты, чтобы без кода собирать простые экраны вроде гостевой книги или записи на прием. Поначалу проекту даже не выделялся бюджет и он «воровал» ресурсы других команд, пока не обратил на себя внимание руководства.

Конфликт с языком Dart

После версии 1.3 команду перевели под рекламное подразделение (Ads), где был принят старый способ писать веб на Java с помощью Google Web Toolkit. Там им предъявили требования энтерпрайз-разработки: явные типы данных, удобство тестов, строгий порядок в коде, а для этого переписать все на Dart, тоже новую технологию внутри корпорации, конкурент JavaScript. Под эту задачу выделили ресурсы, команда сопротивлялась писать на чужом языке по директиве сверху, но деваться было некуда.

Столкнувшись с большими программами, которые живут годами, команда поняла, что без типизации действительно далеко не уехать. Сначала проверяли типы прямо во время работы программы, потом сделали свой слой поверх JavaScript под названием AtScript. Когда об этом узнали в Microsoft, то предложили не плодить еще один язык, а взять TypeScript. Команда согласилась.

Какое-то время писали на TypeScript и автоматически переводили в Dart. На практике выходило пересечение двух языков, ни там ни там не получалось нормально. Отголоски этих компромиссов встречаются в фреймворке по сей день. В итоге от Dart отказались.

Провальный переход на вторую версию

Осенью 2016 года вышел Angular 2: фреймворк переписали с нуля, со старой версией он был несовместим. Анонс запомнился слайдами с «надгробиями» концепций первой версии в духе «мы убили старый контроллер». Без нормального открытого обсуждения с сообществом, почти в одночасье технология, на которую многие сделали ставку превратилась в труп. Представьте, что вы освоили новую технологию от авторитетной компании, уговорили коллег писать на ней, а теперь вам предстоит прийти к руководству и объяснить почему все придется переписать? Это сильно подорвало доверие.

Ситуацию усугубляла путаница с названиями: AngularJS, Angular, Angular 2, «просто Angular». В поиске ответы про старую и новую версии перемешивались, это превращало найм и общение на форумах в сущий кошмар и раздражение только росло.

Сами авторы не скрывают, что вторая версия была вынужденной и поспешной: слишком много приказов сверху, давление по срокам. Ошибка, не столько в стремлении переписать ядро, сколько в том, как это подали пользователям. Подорванное доверие и репутация ломающих релизов заставила многих уйти в набирающий популярность React.

Затянувшаяся работа над ошибками

Чтобы уйти от того Angular 2, которым команда сама была недовольна требовалась смена движка отрисовки: той части, которая решает, что именно показать на экране. Его полностью перерабатывали целых четыре раза, отсюда римская цифра IV и название Ivy. В движок заложили умение выкидывать из сборки неиспользуемый код, чтобы страница весила меньше и грузилась быстрее.

Чтобы не повторить фиаско второй версии нужно было сменить внутренности так, чтобы снаружи для разработчика почти ничего не ломалось. Пришлось изворачиваться, чтобы новый алгоритм вел себя как старый, иногда даже медленнее, лишь бы не ломать старый код. Одна мелочь тянула за собой другую и задача разрослась и превратилась в фактическое переписывание всего фреймворка, на который ушло три с половиной года и семь релизов. В восьмой версии Ivy можно было включить по желанию, в девятой он стал основным.

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

При этом для внешних пользователей Ivy включили, а внутри Google — нет, потому что согласно внутренним правилам большие изменения инфраструктуры авторы должны провести сами по всем затронутым программам. Команде Angular пришлось перевести около 2500 приложений. Это заняло еще годы после публичного обновления и для сообщества выглядело как стагнация.

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

Битва за ключевые системы Google

Если внутри компании столько всего написано на Angular, то почему компания не прикладывала больше усилий на его развитие? Самый используемый фреймворк внутри компании, огромная ценность снаружи, а вложений мало.

Дело в том что главные продукты Google опирались на Wiz, закрытый внутренний фреймворк для Поиска, Фото, платежей и других систем, где критична скорость. Снаружи его не скачать. Для рынка это выглядело так, будто Google не верит в Angular, и самое чувствительное к скорости работает на другом инструменте. Отсюда и сомнения о том, как долго продлится поддержка.

Сближение началось, когда обе команды независимо шли к одной простой модели обновления экрана. Старая модель реактивности на Zone.js перепроверяла все приложение при любом изменении состояния, что замедляло работу. Суть нового подхода заключалась в том, что при изменении значения обновлять только то, что от него зависит, без лишних проверок.

Команда смотрела в сторону более современного подхода, сигналов, которые подсмотрела у фреймворка Solid.js. Примечательно что сам создатель этой технологии Райан Карниато, консультировал команду по вопросам перехода, так как хотел популяризировать подход для всей индустрии.

Wiz в то же время по сути повторял путь Angular, поэтому приняли стратегическое решение объединить усилия. На годы вперед утвердили план: добавлять части Wiz в публичный Angular. Уже весь мобильный веб и YouTube работает на общих сигналах Angular из открытого кода. Если возможности Wiz поставят в Angular целиком, фреймворк по задумке станет движком и для поиска Google.

В сообществе этот называют «ренессансом Angular»: независимые компоненты без модулей-оберток, новый синтаксис условий и циклов, сигналы, отказ от Zone.js, переписанная документация. Цель — снова сделать порог входа низким, каким он был у первого AngularJS.

Какой вывод из этого следует для бизнеса? Angular — технически сильная и сегодня снова удобная технология. Но история показывает, что бренд Google тут не помог, наоборот, решения принимались непрозрачно, и репутационные потери фреймворк отрабатывает до сих пор. Сначала Angular влюбил в себя разработчиков, а потом растерял огромную часть аудитории. Несмотря на ряд улучшений, предсказуемый график релизов с мажорной версией раз в полгода и долгосрочной поддержкой специалисты не спешат возвращаться.

Если возможности Wiz полностью перенесут в Angular, на нем сможет работать даже Google Поиск — это сильнейший аргумент, что проект не бросят. Оборотная сторона той же медали — то, что уже проходили: корпорация может сменить курс без оглядки по внутренним причинам.

Основные релизы Angular 2010–2026

Чем отличается от конкурентов

Философия Angular отличается от React и Vue. Разница видна на конкретных инструментах. То, что в React подбирают из сторонних решений — маршрутизацию, серверный рендеринг, запросы к серверу, управление состоянием, — в Angular доступно из коробки и поддерживается самой командой: роутер, SSR, HttpClient, реактивные формы, сигналы. Сторонние библиотеки здесь тоже есть (например NgRx для состояния, Angular Material и PrimeNG для интерфейса), но их заметно меньше, чем в экосистеме React. Поэтому разработчик берет сразу готовый набор инструментов, готовую архитектуру и подход. Отсюда вытекает плюс: меньше мучений с выбором, но есть и существенный минус: меньше готовых решений под узкие или специфические задачи, которые уже кто-то написал для React.

Для каких проектов подходит

Как уже обсуждалось, Angular создан для больших корпоративных веб-приложений со сложными интерфейсами и долгим сроком жизни: личные кабинеты, внутренние системы. Строгая архитектура, обязательный TypeScript и встроенный механизм внедрения зависимостей помогают держать в порядке большую кодовую базу, над которой работает много людей. Также технология создана под большие нагрузки: мобильная веб-версия YouTube работает на Angular, а это яркий пример того, что на масштабе фреймворк держит нагрузку.

Однако, даже если это ваш случай, все равно рекомендуем остановится и подумать, так как главный ограничитель — не возможности технологии, а рынок кадров. На российском рынке React встречается примерно в 62% фронтенд-вакансий, Vue — в 24%, Angular — в 18%; по числу вакансий React опережает Angular в 3–5 раз. Angular-разработчиков объективно меньше. Для нового проекта это значит: собрать команду и заменить ушедшего разработчика будет дольше и дороже, чем на React. При этом не смотря на ренессанс в развитии технологии ее популярность среди разработчиков продолжает снижаться. В опросе Stack Overflow 2025 Angular используют 18,2% разработчиков против 44,7% у React, а «хотят использовать» Angular лишь 12,6%. Для сравнения: в 2018 году Angular лидировал — 36,9% против 27,8% у React. То есть он был впереди и уступил лидерство. На GitHub у Angular около 100 тысяч звезд против 230+ тысяч у React и 210+ тысяч у Vue.

Со всем, что умеет Angular, справляются и React, и Vue — но с кратно большим пулом найма и более низким порогом входа. Поэтому запускать новый проект на Angular есть смысл в основном тогда, когда у вас уже есть Angular-команда или большой проект уже на этой технологии. При этом списывать технологию рано: она хорошая, зрелая и снова удобная. Вопрос не в ней, а в том, кем вы будете ее поддерживать.

Наш опыт с Angular

Специалисты WS Dev участвовали в разработке проектов разной сложности — от простых дашбордов, до масштабного сервиса анализа, прогнозирования и воздействия на информационное поле. Нам довелось работать как с легаси на AngularJS, так и с более современными версиями, в том числе с использованием сигналов. Сегодня мы не видим причин выбирать Angular для разработки проекта с нуля, даже если речь идет о масштабной разработке.

Если вы уже на Angular, то мы готовы разобраться в унаследованной кодовой базе и взять проект на поддержку и развитие или усилить вашу штатную команду профильными разработчиками в формате аутстаффинга.

Оцените статью:
4,92,7к172