Web Audio API существует уже давно, и про него есть немало статей. Поэтому про сам API много говорить не будем. Расскажем, что Web Audio и Angular могут стать лучшими друзьями, если их правильно познакомить. Давайте сделаем это!
Рубрика «TypeScript» - 13
Пишем Ретровейв на Angular
2020-03-23 в 8:36, admin, рубрики: angular, javascript, open source, TypeScript, Web Audio, Блог компании Tinkoff.ru, музыкаДекларативный шопинг в интернете с помощью Payment Request API и Angular
2020-03-18 в 12:03, admin, рубрики: angular, Apple Pay, google pay, javascript, open source, pament request, Payment Request API, TypeScript, web api, Блог компании Tinkoff.ruКак давно вы платили на веб-сайте в один клик с помощью Google Pay, Apple Pay или заранее заданной в браузере картой?
У меня такое получается редко.
Даже наоборот: каждый новый интернет-магазин предлагает мне очередную формочку. А я должен каждый раз покорно искать свою карту, чтобы перепечатать данные с нее на сайт. На следующий день я захочу оплатить что-нибудь в другом магазине и повторю этот процесс.
Это не очень удобно. Особенно когда знаешь об альтернативе: в последние пару лет стандарт Payment Request API позволяет легко решать эту проблему в современных браузерах.
Давайте разберемся, почему его не используют, и попробуем упростить работу с ним.
Прокачиваем работу с событиями в Angular
2020-03-17 в 13:12, admin, рубрики: angular, Events, javascript, library, open source, optimization, performance, tutorial, TypeScript, Блог компании Tinkoff.ruДавным-давно я написал статью о работе с EventManager в Angular. В ней я рассказал, как можно сохранить привычный нам синтаксис подписок на события, при этом избежав лишних запусков проверки изменений на частых и чувствительных событиях.
Однако описанный мною метод громоздкий и сложный для восприятия. Пришло время переписать фильтрацию на декораторы.
Это мог быть очередной JavaScript-фреймворк
2020-03-14 в 6:47, admin, рубрики: framework, javascript, node.js, nodejs, npm, TypeScript, ПрограммированиеПрошлым летом, в процессе подготовки статьи для Хабра, я не поленился упаковать свой шаблон для бэкэнд-приложений на Node.js в npm-пакет, сделав из него cli-утилиту для быстрого старта.
Никаких надежд на то, что этим пакетом будет пользоваться кто-то, кроме меня, не было изначально. Однако, когда я решил обновить шаблон, внедрив в него нужные мне фичи, я обратил внимание на то, что у npm-пакета есть несколько десятков скачиваний в неделю, а у проекта на гитхабе 12 звёзд. Поставленные по доброте хорошими людьми, наверняка, чтобы поддержать меня, а не проект. Всего 12 звёзд, но мне этого хватило, чтобы решить, что karcass я буду развивать так, как будто он нужен не только мне.
Несмотря на то, что изначально я решил сделать легковесный фреймворк для бэкэнд-приложений, в процессе разработки мне удалось себя убедить в том, что этот велосипед не нужен. И что karcass должен стать не фреймворком, а универсальным инструментом для создания приложений из шаблонов.
Typescript: unsound behavior или поблажки надежности
2020-03-12 в 15:18, admin, рубрики: type safety, TypeScriptЦель — показать, где TS дает иллюзию безопасности позволяя получить ошибки во время работы программы.
Мы не будем говорить о багах, в TS их достаточно
1,500 open bugs and 6,000 closed (‘is:issue is:open label:Bug’)
Все примеры будет рассмотрены при:
- TS strict mode включен (написал статью пока разбирался)
- Без явных «any»: «as any», «Objects», «Function», {[key: string]: unknown}
- Без неявных «any»: (noImplicitAny): не типизированные импорты (pure JS files), неправильный вывод типов
- Без ложных догадок о типах: ответ от сервера, типизация сторонних библиотек
Содержание:
- Введение
- Nominal types, custom types — когда вещи кажутся одинаковым, но такие разные
- Type variance, exact types — об отношении между типами
- Refinement invalidation — поговорим о доверии
- Exceptions — стоит ли признаваться, когда накосячил?
- Unsafe operations — уверенность не всегда идет на пользу
- Бонусные случаи — проверка типов на этапе PR ревью
- Заключение
Чему меня научил мой коммит в Angular
2020-03-10 в 14:40, admin, рубрики: angular, javascript, open source, success story, TypeScript, web-разработкаСегодня я расскажу, как попал в контрибьюторы Angular. Оказалось, это совсем не сложно и весьма увлекательно! Получилась драма с четырьмя актами и одной моралью. Вот, как всё было.
$mol: 4 года спустя
2020-03-04 в 21:25, admin, рубрики: $mol, $mol_atom, $mol_mem, $mol_style, $mol_view, components, customization, di, error handling, ioc, javascript, lazyness, mam, TypeScript, zero configuration, Разработка веб-сайтов, системы сборкиЗдравствуйте, меня зовут Дмитрий Карловский и я… люблю плевать против ветра. Утираться и снова плевать. Хобби у меня такое. И всё, что я создаю, делаю я без оглядки на тенденции, стараясь решать проблемы системно, а не как привычно. Зачастую бывает, что основная сложность даже не в том, чтобы придумать решение, а в том, чтобы объяснить другим, что проблема вообще существует.
Знаю, я всех уже заколебал, но сегодня, хотелось быть рассказать про разработанный мной 4 года назад фреймворк, какой путь он прошёл, где он сейчас, и куда прокладывает новые пути. Пройдёмся мы и по конкурентам, и по крупным игрокам, и даже по мне самому. Так что никто не уйдёт не обиженным. Статья, как обычно, длинная. Мужайтесь.
Angular: понятное введение в NGRX
2020-02-24 в 8:47, admin, рубрики: angular, ngrx, node.js, rxjs, TypeScript Цель этой статьи — дать чистое и ясное представление о ngrx. Для этого я объясню, что нужно знать и понимать о ngrx, а затем мы увидим это в действии с простыми и понятными примерами кода.
Вот список тем, которые мы будем обсуждать в этой статье:
- Что такое ngrx
- Преимущества использования ngrx
- Недостатки использования ngrx
- Когда использовать ngrx
- Действия, Редукторы, Селекторы, Хранилище и Эффекты
Продолжение статьи с примером использования: «Angular: пример использования NGRX».
Читать полностью »
Диагностируем проблемы в микросервисной архитектуре на Node.js с помощью OpenTracing и Jaeger
2020-02-22 в 20:36, admin, рубрики: jaeger, nats, node.js, opentracing, TypeScriptВсем привет! В современном мире крайне важна возможность масштабировать приложение по щелчку пальцев, ведь нагрузка на приложение может сильно отличаться в разное время. Наплыв клиентов, которые решили воспользоваться вашим сервисом, может принести как большую прибыль так и убытки. Разбиение приложения на отдельные сервисы решает проблемы с масштабированием, всегда можно добавить инстансов нагруженных сервисов. Это несомненно поможет справиться с нагрузкой и сервис не упадет от нахлынувших на него клиентов. Но микросервисы вместе с неоспоримой пользой, вносят и более сложную структуру приложения, а так же запутанность в их взаимосвязях. Что если даже успешно масштабировав свой сервис, проблемы продолжаются? Время ответа растет и ошибок становится все больше? Как понять, где именно проблема? Ведь каждый запрос к API может порождать за собой цепочку вызовов разных микросервисов, получение данных из нескольких БД и сторонних API. Может это проблема с сетью, или API вашего партнера не справляется с нагрузкой, а может это кеш виноват? В этой статье я постараюсь рассказать, как ответить на эти вопросы и быстро найти точку отказа. Добро пожаловать под кат.
Типизированные запросы OData в TypeScript
2020-02-22 в 20:04, admin, рубрики: .net, fluent, linq, odata, TypeScriptТрадиционно запросы OData к данным выражаются в виде простых строк без проверки типов при компиляции или без поддержки IntelliSense, кроме того, разработчику приходится изучать синтаксис языка запросов. Данная статья описывает библиотеку TsToOdata, которая превращает запросы в удобную языковую конструкцию и применяется аналогично классам и методам. Вы создаете запросы к строго типизированным коллекциям объектов с помощью ключевых слов языка TypeScript и знакомых операторов.