Category : javascript

javascript
Подборка VS Code-плагинов для Frontend-разработчиков и не только

Одним из наиболее ценных аспектов Visual Studio Code является его расширяемость с помощью плагинов, которые значительно облегчают и улучшают рабочий процесс. В этой статье мы собрали инструменты - от простых до продвинутых - которые сделают вашу разработку более продуктивной и приятной, позволяя сосредоточиться на творческой части процесса.Color Info — Предоставляет краткую информацию о цветах CSS. По умолчанию расширение работает с любым документом css, sass, scss. Распознает все основные цве…

  • суббота, 26 августа 2023 г. в 00:00:14
javascript
Под капотом анимаций в React Native. Часть 2/2: Reanimated and JSI

Привет! Меня зовут Евгений Прокопьев, я по-прежнему старший инженер-разработчик в СберМаркете. Пишу на RN и по-прежнему очень люблю создавать красивые анимации. Это вторая и последняя статья из серии как работает React Native (RN) под капотом, на примере анимаций. Призываю сначала ознакомиться с первой: Под капотом анимаций в React Native. Часть 1/2: Animated and BridgeВ предыдущих сериях Мы пытаемся разобраться в том, как работают инструменты для анимации в RN и почему в итоге получается тот …

  • суббота, 26 августа 2023 г. в 00:00:14
javascript
JavaScript повсюду или почему веб-технологии захватили мир

Я давно слежу за развитием веб-технологий и каждый раз, натыкаясь на очередной холивар в интернете про злой и страшный JavaScript, залезающий на чужую территорию, инстинктивно хочу побыть его адвокатом. Обычно все мои доводы сводятся к банальному “не мы такие, жизнь такая” или “ничего личного, просто бизнес”, но в этот раз захотелось развернуто обосновать причины популярности веб-технологий.Для контекста подобрал рандомные статьи с Хабра, чтобы вы могли насладиться чтением комментариев и оцени…

  • четверг, 24 августа 2023 г. в 00:00:18
javascript
Считаем «a=1; b=2; x=pi/3; abcos(x)»

В предыдущей серии мы научились считать выражения вида -2.1+ .355 / (cos(pi % 3) + sin(0.311)). Один из комментариев там предложил посчитать то, что я вынес в заголовок этого поста. Что ж, вызов принят. Как и в предыдущем посте, мы "на пальцах" разбираем устройство простейшего интерпретатора.Код из конца предыдущего поста: jdoodle.com/ia/KIZ и на всякий случай https://pastebin.com/Ac5BgCFaПонудим о языкеДо сих пор мы имели дело с обычными арифметическими выражениями на общепринятом язы…

  • четверг, 24 августа 2023 г. в 00:00:17
javascript
Рефлексия в JavaScript и TypeScript: обзор основных техник. Как сгенерировать CLI-интерфейс для кла…

Как и в любом достаточно динамическом языке, в JavaScript из коробки есть способы разобрать в рантайме структуру его значений — определить типы, ключи объектов, получить конструкторы и прототипы. В этой статье я хочу рассмотреть основные такие возможности, плюс показать, как можно получить ещё больше информации о типах при использовании TypeScript, и как добавить классам и их полям собственные метаданные при помощи декораторов. Каждую из техник я покажу на примере небольшого CLI-фреймворка, р…

  • четверг, 24 августа 2023 г. в 00:00:17
javascript
Как показать миллион зданий на карте — и не сломать браузер

В 2ГИС мы аккумулируем огромное количество геоданных, с которыми взаимодействуют миллионы пользователей ежедневно. Анализируя их, мы можем получить ценную информацию и найти важные идеи для развития городов. Эти данные также полезны организациям.Чтобы помочь бизнесу и муниципальным организациям, мы создали 2GIS PRO — инструмент для GPU‑аналитики, с возможностью визуализации огромного количества данных на карте в виде диаграмм и графиков.Расскажем, как мы получаем такую картинку, как это всё ра…

  • среда, 23 августа 2023 г. в 00:00:16
javascript
Как уменьшали размер VS Code, используя name mangling — сокращение идентификаторов во время сборки

Не так давно, мы уменьшили на 20% объем итогового скомпилированного JavaScript-кода в Visual Studio Code. В абсолютных числах это около 3.9 МБ. Хоть это и меньше типичной гифки из блога, цифра все равно значительная! Это положительно влияет не только на объем скачиваемых данных для очередного обновления, но и на время запуска: меньше кода значит меньше работы для парсера и интерпретатора. И ко всему прочему, мы добились этого без удаления кода или каких-либо рефакторингов. Вместо этого, мы раб…

  • среда, 23 августа 2023 г. в 00:00:15
javascript
DOM, DI и View: деревья в Angular

Чтобы стать продуктивным разработчиком на Angular, потребуется понимание различных деревьев, из которых состоит приложение. На первый взгляд легко можно спутать дерево инжекторов DI и DOM-дерево непосредственных HTML-элементов и вьюх Angular. Они похожи и иногда имеют прямое соответствие, но далеко не всегда. В статье рассмотрим различия, научимся держать их в уме и освоим, как можно обойти возможные трудности, связанные с ними.Тестовый примерПредположим, у нас есть our-component с такой струк…

  • среда, 23 августа 2023 г. в 00:00:14
javascript
Бесконечное радио создаваемое нейронными сетями. Open-source проект

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

  • вторник, 22 августа 2023 г. в 00:00:12