Category : javascript

javascript
Оптимизация JavaScript. Inline Caches

Думаю, ни для кого не секрет, что все популярные JavaScript движки имеют схожий пайплайн выполнения кода. Выглядит он примерно следующим образом. Интерпретатор быстро компилирует JS-код в байт "на лету". Полученный байт код начинает исполняться и параллельно обрабатывается оптимизатором. Оптимизатору требуется время на такую обработку, но в итоге может получиться высоко-оптимизорованный код, который будет работать в разы быстрее. В движке V8 роль интерпретатора выполняет Ignition, а опт…

  • суббота, 27 апреля 2024 г. в 00:00:14
javascript
Реализация многооконного приложения на Vue 3

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

  • пятница, 26 апреля 2024 г. в 00:00:11
javascript
«А» и «Б» сидели на трубе. «А» упало, «Б» пропало. Что осталось на трубе? (алгоритм получения ответ…

Началось всё с того, что не нашел я библиотеки для JavaScript, которая вычисляет собственные векторы для комплекснозначной матрицы 4х4. Пришлось писать самому. И в ходе реализации встала передо мной этакая бодренькая микрозадачка – из набора чисел «1, 2, 3, 4» вычеркнули два числа «x, y» (неодинаковых – кто-то придет завтра и задаст эти два числа, а мы сегодня должны приготовиться), требуется объяснить компьютеру, как определить оставшиеся, невычеркнутые числа. И я завис – все идеи, которые при…

  • пятница, 26 апреля 2024 г. в 00:00:10
javascript
Руководство по Next.js. 2/3

Hello world! Представляю вашему вниманию вторую часть обновленного руководства по Next.js. Первая часть На мой взгляд, Next.js — это лучший на сегодняшний день инструмент для разработки веб-приложений. Предполагается, что вы хорошо знаете JavaScript и React, а также хотя бы поверхностно знакомы с Node.js. Обратите внимание: руководство актуально для Next.js версии 14. При подготовке руководства я опирался в основном на официальную документацию, но в "отсебятине" мог и приврать (или …

  • четверг, 25 апреля 2024 г. в 00:00:07
javascript
Самые интересные задачи для безопасников — Джабба одобряет

Мы решили не один CTF-турнир. За плечами остались KnightCTF, 0xL4ugh и DiceCTF. Найти по-настоящему интересные и сложные задачи все труднее, поэтому будем смотреть в оба глаза и следить за несколькими мероприятиями одновременно. На этот раз — порешаем задачи сразу двух CTF-турниров: Space Heroes и ThCon 2024. Уже интересно, что подготовили безопасники из США и Франции? Тогда добро пожаловать! Дисклеймер: материал не обучает хакингу и не призывает к противозаконным действиям. Все описанное ниж…

  • четверг, 25 апреля 2024 г. в 00:00:06
javascript
Особенности обработки native events в React.js

В данной статье рассматриваются особенности, которые связаны с обработкой нативных событий (native events) в React-приложениях. Существует проблема частичной потери контекста функционального компонента при обработке нативных событий, которые навешиваются на элементы с помощью глобальных объектов document, window или через ссылки (refs). В статье рассматривается данная проблема и предлагается способ её решения (один из вариантов).МотивацияОсновной мотивацией для написании данной статьи стал мой …

  • четверг, 25 апреля 2024 г. в 00:00:05
javascript
Преобразования данных с React Query

По мере того, как я всё больше погружался в библиотеку и окружающее её сообщество, я заметил несколько закономерностей, о которых люди часто спрашивают. Эта статья будет посвящена довольно распространенной и важной задаче: преобразованию данных.Преобразование данныхДавайте посмотрим правде в глаза: большинство из нас не используют GraphQL. Если да, то вы можете быть счастливы, у вас есть роскошь запрашивать данные в желаемом формате.Однако если вы работаете с REST, вы ограничены тем, что возвра…

  • четверг, 25 апреля 2024 г. в 00:00:04
javascript
Cample.js — один из самых быстрых фреймворков без виртуального DOM в Интернете! Отчёт № 2

В данной статье я бы хотел провести последний отчёт по быстродействию Cample.js. За два года работы над фреймворком, сложились небольшие результаты, которые я бы хотел рассмотреть.Отчёт включает в себя сравнения по производительности с популярными библиотеками и фреймворком, а также сравнение с реализацией на чистом javascript.В прошлом, вышли отчёт № 0 и отчёт № 1, в которых я в похожей манере проводил тесты фреймворка, в этом же отчёте, я думаю, заострить внимание больше на результаты работы.…

  • среда, 24 апреля 2024 г. в 00:00:07
javascript
Настройка транзакций в Solana через Phantom Wallet

Я не разбираюсь в крипте от слова "совсем". И как-то через знакомых на меня вышли ребята-криптовалютчики, которые сделали свою монету на основе Solana и хотели на сайте настроить автоматическую покупку этих самых монет за SOL (надеюсь, правильно сформулировал). Сам сайт у них на конструкторе webflow и в целом код для создания и отправки транзакций у них был написан. Однако была проблема, что вылетали ошибки при попытке подписать и отправить транзакцию через Phantom Wallet (необходимо за…

  • среда, 24 апреля 2024 г. в 00:00:06