Angular Fanatic
1.34K subscribers
44 photos
2 videos
3 files
224 links
Ангуляр в каждый проект!
__________
Канал на паузе
Download Telegram
Если вам, как и мне, неохота делать бэкенд, и хорошо умеете в SQL,
то рекомендую вам следующие либы (одна на nodejs, другая на GO, но они оба умеют в docker 🍾)

1. Graphile - клиент написаный на js. Умеет делать коннект в вашу базу на PostgreSQL. Тип общения: GraqhQL. Умеет обрабатывать процедуры и тд.

2. pRest - клиент написанный на go. Все то же самое, только на REST.

Первый гораздо удобнее. Так же Graphile удобно юзать в микросервис для Nest
Какие только решения не придумывают для показа лоадера.
Предлагаю посмотреть на популярные способы.
А какой способ вы используете для loading?
anonymous poll

<my-loading *ngIf="!model"></my-loading> – 12
👍👍👍👍👍👍👍 36%

другим образом – 12
👍👍👍👍👍👍👍 36%

*ngIf="model; else loading" – 8
👍👍👍👍👍 24%

*ngIf="model withLoading" – 1
👍 3%

👥 33 people voted so far. Poll closed.
Зачем нужны Angular Elements?
1. Встраивание компонентов в другие фреимворки.
2. Встраивание компонентов в серверный рендеринг (например прямо в Razoz Asp.net).
3. Для реализации динамических приложений (например в плагинную архитектуру).
4. Модернизация от AngularJS до Angular
5. Независимая публикация приложений

https://blog.nrwl.io/5-reasons-to-use-angular-elements-390c9a629f89
Только что закончился Angular Connect, записи доступны по ссылке
Сегодня из интересного и нового - Bazel, Ivy.
последний час уделили QA,
про Ivy рассказывал один из его разработчиков, довольно таки интересно)
ссылки:
1я часть
https://www.youtube.com/watch?v=3kEgYd_A0j4
2я часть
https://www.youtube.com/watch?v=2wMQTxtpvoY
Austin (из ngAir) рассказывает свои впечатления после полугода работы на React.

React для разработчиков Angular
https://medium.com/@amcdnl/react-for-the-angular-dev-be21a39a382
Наверно, все кто копался в исходниках angular видели этот символ - ɵ
в качестве префикса для приватных полей, вот откуда ноги растут - и почему этот символ, а не такой, например, более интересный -🔑

было бы весьма забавно.
return new 🔑NoOpAnimationPlayer()
лол
Ну наконец то скоро появится нормальное расширение для vscode. Думаю будет очень удобно в больших проектах.

как в старом добром vs (шаблоны mvc)
VMware недавно искали в команду Clarity, разработчиков, и привлекли пару интересных ребят. И,соответсвенно, процессы пошли быстрее.
Сегодня наконец зарелизили Clarity 1.0.0.
Обещают радовать новыми релизами каждый четверг.

https://medium.com/claritydesignsystem/hello-1-0-257d728ee04b
Ionic, настолько развился, что имеет теперь свою студию - Ionic Studio,
И конечно, пока это не бесплатно. Хотят открыть в следующем году Community Edition.
Записывайтесь на тест бетки.

https://blog.ionicframework.com/announcing-ionic-studio-a-powerful-new-way-to-build-apps/
Посмотрите как можно запустить Ivy на stackblitz
Ну а для ваших экспериментов Uri специально подготовил IvyComponent.

А Minko добавил свою демку прям из последних внутренних сорсов.
Angular v7.1.0-ee8310445
и это опять же не означает, что Ivy придет в ближайших релизах.
еще один бонус для статьи, для поиска именно Angular совместимых пакетов в npm, можете использовать такую утилиту - https://ngx.tools/
Прямо сейчас идет ngAir говорят про Perfume.js (метрика производительности) . Оказывается полный Api работает только на Chrome,🤔 . в FF показывает всего пару метрик. (одна!)
Немного эксклюзива от Rob Wormald про IVY. В прошедший четверг прошла закрытая сессия QA от nrwl. Который, конечно же, я пропустил, но они все таки прислали видео. Видео не могу опубликовать, но пересказать на свой лад, считаю нужным.

- Это уже 4 попытка сделать оптимизированный рендерер, мы пытаемся сделать это уже в четвертый раз, поэтому и такое название - IVY. В то время, когда мы делали AngularJS, веб технологии опережали сам фреймворк, и были естественные ограничения. И я считаю, мы создали хороший фреймворк (Angular) для больших enterprise приложений. И когда у вас такое большое приложение, размер приложения не имеет такой большой разницы, на 100кб больше или меньше, какая разница? Но когда вы делаете свой маленький блог, размеры приложения начинают играть важную роль. Летом прошлого года, мы начали делать новый рендерер. У нас (в Google) много приложений на Angular. И мы должны заботится о старых решениях, чтобы их так же перевести на новый rendrer. На данном этапе не стоит ожидать от Ivy чего то сверхестественного.
Когда смотрите на NgModule вы не видите его, вы смотрите на компонент, а в NgModule происходит невидимая магия.
Если дадите нам шаблон, мы сделаем из него оптимизированный js код, и это будет быстрее работать чем например простой jsx в react. Так что, это действительно хорошая вещь.
- Так что касается производительности?
- Вы не получите болшого скачка в начале, но конечно же вы уберете много неиспользуемого мусора. В некоторых сценариях это будет работать медленнее, в некоторых быстро. Но опять же это мои предлположения, нужно смотреть тесты.
- Как насчет начальной загрузки?
- Первая загрузка станет легче, так же ждут кардинальные улучшения и упрощение LazyLoad. Вы просто загружаете компонент и показываете его, в отличии от загрузки модулей. Да это был хороший подход (NgModule). И мы разрабатываем совершенно новую вещь, и одна из этих принципов была - идея локали.
Да, вы все знаете зачем нам ранее нужно было анализировать весь код, собирать приложение целиком и т.д. (Тут он про metadata.json и принцыпы упаковки модулей в npm для angular, почему это хорошо и т.п.) Поэтому принцип локали будет означать, что вы будете компилировать компонент локально. (Принося директиву и т.д. отдельно, не связывая в один NgModule). И это даст, я считаю, легкость в обучении Angular, так же в тестировании приложений. Самое замечательное что это будет совместимо с предыдущими версиями.
- А что насчет Angular Elements?
- (кратко) с Ivy весь ненужный мусор удалится.
- А что с CD и Zone.js?
- Тут нужно понимать что Zone.js и CD разные вещи, да Zone.js блестящее решение для отработки большинства случаев, но все вы знаете какие недостатки у этого подхода есть.
Ivy разработаны так, чтобы не полагаться на зоны, они могут работать и без них. Да, вы можете всегда дернуть cd чтобы изменения обнаружились. Пока мы не знаем, какое правильное решение будет для большинства разработчиков.
(тут немного про компиляторы tsc, ngc)
- Так когда выйдет Ivy?
- Я не буду оглашать точную дату (тут приводит что нужно пройти много тестов и т.д.) Но мы довольны производительностью. В нашем внутреннем репозитории более 95% тестов проходит. И мы пробуем на наших внутренних (Google) приложениях, и если это будет работать у нас, то будет работать и у остальных разработчиков.
И последнее что я хочу сказать - у нас есть огромная клиентская база, и мы не сможем так же перескочить как с angularjs на angular. И поэтому мы сдержанны в предоставлении информации, мы должны быть уверены что пользователи получат стабильное приложение, и должны подождать пару дополнительных месяцев, чтобы получить новую хорошую вещь.
stat.png
492.2 KB
Появился такой benchmark, сравнение 2х компиляторов, в реальном приложении

В итоге выводит такие результаты в байтах:
NGC: 112321 NGTSC: 48635
Статический анализатор от AngularDoc теперь обрабатывает историю коммитов, чтобы дать временную карту развития компонентов. Так же в октябре, от команды AngularDoc был представлен ngrx explorer. (Доступен на сайте, и можно установить как extension к vscode)

Обо всем этом в статье.
Прекращайте заставлять всех своих пользователей платить за IE9!
- именно с таким тезисом выступал Stephen Fluin на прошедшем в октябре AngularMix.
Идея состоит в том, чтобы собирать разные приложения для старых и современных браузеров. Такое есть во Vue CLI.
Теперь возможно упростить всю эту работу и с Angular CLI вот с таким расширением - ngx-build-modern