Да, вы правильно прочитали. Ранее в ноябре этого года Google выпустил последнюю версию angular 5. Но почему?

Angular 4 также был выпущен ранее в этом году, и до того, как жара улеглась, Google выпустила версию 5. Большинство разработчиков задаются вопросом, насколько эффективно обновление их текущей версии до версии 5 и стоит ли это риска. в этом посте давайте обсудим некоторые улучшения, произошедшие в angular 5

Почему Angular 5.

Первое первым. Angular 5 обратно совместим с предыдущими версиями (не Angular JS), такими как angular 2 и 4. Поэтому, если вы разрабатываете приложение с использованием angular 4 или около того, вы можете легко обновить его до Angular 5 с небольшими изменениями. Большинство основных изменений в Angular 5 произошли внутри (как мы называем это «под капотом»). Команде Angular удалось уменьшить размер, повысить производительность и интегрировать последнюю версию машинописного текста, чтобы разработчики могли использовать новые функции, предоставляемые Typescript 2.3. Google объявил, что цель обновления — сделать фреймворк «быстрее, меньше и проще в использовании».

Функции

Оптимизатор сборки

Оптимизатор сборки — это инструмент, включенный в интерфейс командной строки angular, чтобы сделать пакет меньше и быстрее. По сути, у него две основные задачи. Во-первых, он может пометить часть приложения как «чистое». Это приведет к улучшению встряхивания дерева и удалению ненужных дополнительных частей из приложения. во-вторых, оптимизатор удаляет декораторы во время выполнения. Angular обычно использует декораторы во время компиляции. Их не нужно включать во время выполнения. это дополнительные накладные расходы.

Опережающий компилятор

Как мы его называем, компилятор AOT намного быстрее, чем предыдущие версии angular. Компилятор AOT использует для компиляции машинописного кода в собственный javascript. Команде Angular удается достичь целевых показателей производительности при инкрементальном восстановлении AOT за 2 секунды, и она будет включать AOT по умолчанию в будущем выпуске CLI.

Универсальный API передачи Angular

Универсальный Angular позволяет нам легко обмениваться состоянием между клиентом и сервером. он позволяет выполнять рендеринг и загрузку на стороне сервера поверх сгенерированного HTML. В пакет добавлены новые модули под названием «ServerTransferStateModule» и «BrowserTransferStateModule», которые позволяют нам генерировать информацию как часть рендеринга на стороне сервера и передавать ее обратно клиенту без дополнительных вызовы запроса. Таким образом, при передаче состояния с сервера нет необходимости делать второй HTTP-запрос, как только приложение достигает клиента.

HttpClient

Команда Angular позволяет нам использовать HttpClient. Таким образом, предыдущая библиотека @angular/http устарела.

Чтобы выполнить обновление до HttpClient, вам потребуется заменить HttpModule на HttpClientModule из @angular/common/http в каждом из ваших модулей, внедрить службу HttpClient и удалить все map(res =› res.json())вызовы, которые больше не нужны.

Новые события жизненного цикла маршрутизатора

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

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

Импорт RxJS 5.5

Библиотека реактивного программирования RxJS была обновлена ​​до версии 5.5.2 или более поздней и содержит операторы, которые устраняют побочные эффекты разделения кода и проблем с встряхиванием деревьев. Кроме того, RxJS теперь распространяет версию с использованием модулей ECMAScript, которые по умолчанию загружаются через интерфейс командной строки Angular.

Угловой 6

Angular 6, скорее всего, выпущен примерно в марте 2016 года. Google планирует следовать той же теме для angular 6, что и в angular 5. (Те, кто запутался, команда angular является частью Google).

Как объяснил технический директор Google Брэд Грин:

«Легче, меньше, быстрее — это тема для версии 5. Мы продолжим эту тему для версии 6, просто упрощая жизнь разработчикам, позволяя предоставлять приложения лучше для их пользователей»,