Обновить
19.46

Angular *

JavaScript-фреймворк

Сначала показывать
Порог рейтинга
Уровень сложности

Компилятор Ангуляр в 200 строчек кода

Время на прочтение3 мин
Охват и читатели5.1K
Привет. Меня зовут Роман, и я не изобретатель велосипедов. Мне нравится фреймворк Angular и экосистема вокруг него, и я разрабатываю с его помощью свои веб-приложения. С моей точки зрения, основное преимущество Angular в долгосрочной перспективе базируется на разделении кода между HTML и TypeScript, что подробно было описано одним из его разработчиков why-angular-renders-components-with.html Это преимущество имеет и обратную сторону: необходимость компиляции в принципе и сложность динамической компиляции компонентов в runtime. А так хочется использовать уже знакомый синтаксис шаблонов Angular, чтобы дать пользователю своих приложений возможность настраивать шаблоны писем, генерировать отчеты и таблицы для печати или задавать формат экспорта xml файлов! Чтобы узнать, как это сделать — добро пожаловать под кат!
Читать дальше →

Разбираемся в Angular Ivy: Incremental DOM и Virtual DOM

Время на прочтение4 мин
Охват и читатели34K

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




В нашей компании Nrwl мы уже какое-то время находимся в предвкушении возможностей, которые откроет нам и нашим клиентам Ivy. Angular Ivy — это новый движок рендеринга Angular, кардинально отличающийся от всех аналогичных технологий популярных фреймворков тем, что он использует Incremental DOM.

Читать дальше →

Сверхпростое логгирование в Javascript — два декоратора, и готово

Время на прочтение7 мин
Охват и читатели22K


Вам еще не надоело писать logger.info('ServiceName.methodName.') и logger.info('ServiceName.methodName -> done.') на каждый чих? Может вы, так же как и я, неоднократно задумывались о том, чтобы это дело автоматизировать? В данной статье рассказ пойдет о class-logger, как об одном из вариантов решения проблемы с помощью всего лишь двух декораторов.

Читать дальше →

Обзор новых функций NestJS 6

Время на прочтение4 мин
Охват и читатели7.9K
Мы в TestMace активно используем NestJS для разработки наших сервисов. Сегодня вашему вниманию представляется перевод статьи, посвященной обзору фич новой мажорной версии NestJS.



Сегодня я рад представить официальный релиз Nest 6 — прогрессивного Node.js фреймворка для создания эффективных корпоративных серверных приложений.


Для нашего сообщества последний год не прошёл бесследно: популярность выросла почти на 300%, что в 4 раза больше, чем у какой-либо из существующих HTTP-библиотек. О Nest рассказывали на большом количестве конференций по всему миру, было создано множество статей и видеоматериалов. 2018 год был невероятным, а 2019 будет ещё лучше!

Читать дальше →

Лучшее из опыта создания чистых и быстрых Angular приложений

Время на прочтение4 мин
Охват и читатели19K
На написание этой статьи сподвигли поиски JavaScript front-end разработчиков в свою компанию в Ставрополе. Т.к. длительное время не удавалось найти толкового программиста и тогда мы решили запустить программу стажировки с большим количеством обучающего материала по Angular & JS.

Это перевод статьи Vamsi Vempati про его опыт работы над крупномасштабным приложением для компании Trade Me, написанным на Angular.



На сегодняшний день я уже проработал пару лет над крупномасштабным приложением Angular в компании Trade Me. В течение последних нескольких лет наша команда дорабатывала наше приложение с точки зрения стандартов написания кода и производительности, чтобы привести его в максимально хорошее состояние.

В статье в общих чертах описываются методы, которые мы используем в нашем проекте. Текст по большей части связан с Angular, TypeScript, RxJs и @ngrx/store.

Кроме того, будут рассмотрены некоторые общие рекомендации по написанию кода, которые помогут сделать приложение более «чистым» и читаемым.
Читать дальше →

Планы на Angular 8.0 и Ivy

Время на прочтение3 мин
Охват и читатели9.1K

Каждую неделю мы получаем вопрос: "Когда уже Ivy будет готов?". Пришло время рассказать, как обстоят дела с версией 8.0, а также поделиться с вами планами по доведению до ума и релизу движка Ivy.


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


Читать дальше →

Мультиязычные приложения в Angular

Время на прочтение3 мин
Охват и читатели6.4K

image


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

Читать дальше →

Избавляемся от дублей пакетов в бандлах

Время на прочтение3 мин
Охват и читатели11K

Существует много webpack пакетов находящих дубли в бандле, самый популярный из них duplicate-package-checker-webpack-plugin, но он требует пересборки проекта, а так как стояла задача автоматизировать подбор оптимальной версии пакетов, то и вовсе получилось свое альтернативное решение.


Ну или моя история как получилось уменьшить бандл на 15%, за несколько секунд.


боль

Читать дальше →

Custom elements в бою

Время на прочтение4 мин
Охват и читатели11K
Добрый день!

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

В связи с этим, при наличии желания увеличить скорость разработки и обеспечить единообразие продуктов, было решено разработать общую компонентную базу. О том, как создавался ui kit, и о долгих боях с дизайнерами мы умолчим, а вот о реализации данной задачи я и хочу поговорить.
На фронте у нас демократия или даже анархия. Люди вольны использовать те решения, с которыми им удобно работать. На данный момент в бою есть проекты на AngularJS, Angular, React, Vanilla, и есть также проекты на Vue для внутреннего использования. Вот на этом моменте наш взор и обратился на web components.
Читать дальше →

Основы реактивного программирования с использованием RxJS. Часть 2. Операторы и пайпы

Время на прочтение9 мин
Охват и читатели44K


В предыдущей статье мы рассмотрели, что такое потоки и с чем их едят. В новой части мы познакомимся с тем, какие методы RxJS предоставляет для создания потоков, что такое операторы, пайпы(pipes) и как с ними работать.

Серия статей «Основы реактивного программирования с использованием RxJS»:



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

Отладка Angular CLI приложения в VSCode с помощью Browser Preview

Время на прочтение2 мин
Охват и читатели12K
Привет, Хабр! В Iponweb мы не только творим магию с помощью Kubernetes, но и создаем сложные пользовательские интерфейсы. Основной фреймворк, который мы используем, — Angular (а также AngularJs для legacy частей), поэтому удобство разработки для нас — не пустой звук. Мы решили перевести статью Марка Пиесзака, которая призвана повысить удобство отладки JS-кода.

Кеннет Аучнберг, программный менеджер команды VSCode, недавно зарелизил расширение, которое позволяет запускать и отлаживать любое JS-приложение прямо в VSCode IDE!


Читать дальше →

Оверинжинирг 80 уровня или редьсюеры: путь от switch-case до классов

Время на прочтение7 мин
Охват и читатели11K

image


О чем пойдет речь?


Посмотрим на метаморфозы редьюсеров в моих Redux/NGRX приложениях за последние пару лет. Начиная с дубового switch-case, продолжая выбором из объекта по ключу и заканчивая классами с декораторами, блекджеком и TypeScript. Постараемся обозреть не только историю этого пути, но и найти какую-нибудь причинно-следственную связь.

Читать дальше →

Ближайшие события

Когда исчезнут JavaScript-фреймворки?

Время на прочтение11 мин
Охват и читатели45K
Автор материала, перевод которого мы сегодня публикуем, веб-разработчик, говорит, что он старается регулярно пересматривать набор инструментов, которыми пользуется. Делает он это для того, чтобы понять, может ли он без некоторых из них обойтись, решая свои обычные задачи. Недавно он решил провести эксперимент и создать сложное фронтенд-приложение без использования JavaScript-фреймворков.
Читать дальше →

NestJS - тот самый, настоящий бэкенд на nodejs

Время на прочтение6 мин
Охват и читатели190K
image

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

Поэтому, NestJS- это не только фреимворк для бэкенда, но и возможность войти в мир передовых концепции, например таких как DDD, Event sourcing и микросервисной архитектуре. Все упаковано в простой и легкой форме, так что выбор за вами - решаете ли вы использовать всю платформу или просто использовать ее компоненты.
Читать дальше →

Как дебажить фронтенд и бекенд: пошаговая инструкция

Время на прочтение6 мин
Охват и читатели70K
Привет, Хабр! Представляю вам перевод статьи "How to debug javascript in Chrome quick and easy ".

В этом посте мы научимся дебажить JavaScript на фронт- и бекенде с помощью Chrome DevTools и VS Code.
Читать дальше →

Как адаптировать UX/UI под permissions

Время на прочтение6 мин
Охват и читатели7.9K

Во многих проектах существует процессы аутентификации (в той или иной степени). Написано много “бест практис” во всех известных технологиях и т.д. и т.п.


Но вот пользователь сделал логин и? Ведь он далеко не всё может сделать. Как определить что он может видеть, а что нет. На какие кнопки имеет право нажимать, что может менять, что создавать или удалять.


В этой статье я хочу рассмотреть подход к решению этих проблем на веб аппликации.


image

Читать дальше →

Основы реактивного программирования с использованием RxJS

Время на прочтение6 мин
Охват и читатели48K

Часть 1. Реактивность и потоки


Данная серия статей посвящена реактивности и ее применению в JS с использованием такой замечательной библиотеки как RxJS.

Серия статей «Основы реактивного программирования с использованием RxJS»:



Для кого эта статья: в основном, здесь я буду объяснять основы, поэтому в первую очередь статья рассчитана на новичков в данной технологии. Вместе с тем надеюсь, что и опытные разработчики смогут почерпнуть для себя что-то новое. Для понимания потребуются знания js(es5/es6).

Мотивация: впервые я столкнулся с RxJS, когда начал работать с angular. Именно тогда у меня возникли сложности с пониманием механизма реактивности. Сложности прибавлял еще тот факт, что на момент начала моей работы большинство статей было посвящено старой версии библиотеки. Пришлось читать много документации, различных мануалов, чтобы хоть что-то понять. И только спустя некоторое время я начал осознавать, как “все устроено”. Чтобы упростить жизнь другим, я решил разложить все по полочкам.
Читать дальше →

Взаимодействие сайта в браузере и локально запущенной программы

Время на прочтение7 мин
Охват и читатели22K

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



Картинка отсюда


Первыми приходят в голову три способа решить эту задачу:


  1. Обойтись средствами браузеров, или написать плагины к ним
  2. Организовать обмен данными через backend, выступающий в роли посредника
  3. Добавить в программу HTTP-сервис, и обращаться к ней напрямую из браузера

Третий пункт выглядит хорошо, позволяет убрать авторизацию в программе, не требует вообще никакого пользовательского интерфейса. Попробуем его реализовать, написав программу на C# под .NET Framework 4. Так как речь пойдет о .NET, решение будет только для Windows (XP и новее). Веб-приложение сделаем на angular.

Читать дальше →

Лучшее из мира Angular за неделю — Дайджест №1 (18 января - 25 января)

Время на прочтение4 мин
Охват и читатели8.1K

image


Свежая подборка со ссылками на новости и материалы.


Приятного чтения!

Читать дальше →