Category : javascript

javascript
Практика по исправлению рекурсивных импортов во фронтенд приложении

Ранее публиковал теоретическую часть по рекурсивным импортам, желательно ознакомиться перед тем как продолжить, чтобы было общее преставление.Рекурсивные импорты рассмотрим на примере React/Redux приложении.Исходный код приложения опубликован тут, можете склонировать и попробовать самостоятельно исправить ошибки. Так сказать закрепить теорию на практике.Barrel файлы и рекурсивные импортыЧастая ошибка, связанная с рекурсивными импортами — это использование barrel файлов. Желательно их не использ…

  • вторник, 13 января 2026 г. в 00:00:08
javascript
Подходы к state management в React

Две проблемы React-разработчикаУ React-разработчика две беды:Целевые данные изменились, а ререндера не произошло.Целевые данные не изменились, а ререндер произошёл.Есть много способов подружить данные с UI. В рамках этой статьи я пройдусь по популярным подходам: разберём, как устроены подписки, почему происходят лишние ререндеры, и когда какой инструмент подходит лучше. Выбор библиотек основан только на личном опыте: описал то, с чем сталкивался лично. В целом, все библиотеки из списка крайне п…

  • вторник, 13 января 2026 г. в 00:00:06
javascript
Инвестиционные боты (почти) с нуля. Часть 1: теория и первые шаги реализации

Иллюстрация процесса (сгенерировано https://grok.com/) Всем привет.В этой части мы изучим базовую теорию и перейдем к практическому применению.Коротко о том, чем мы тут занимаемся К сожалению, на Хабре я не прошел песочницу с нулевой частью, поэтому вот ссылка на часть 0, где идет описание целей более подробно.Для лиги лени добавляю краткое описание.Цель проста как мир: получать деньги ничего не делая. Это все упрощение, но именно этого я добиваюсь. Для этого я использую свои знания в програм…

  • вторник, 13 января 2026 г. в 00:00:05
javascript
Почему JS-разработчики выбирают Rust, Go и Zig

Команда JavaScript for Devs подготовила перевод статьи о том, как инструменты JavaScript переживают сдвиг в сторону системных языков. Rust, Go и Zig уже не эксперимент, а основа нового поколения бандлеров, линтеров и компиляторов. Выясняем, почему экосистема сознательно уходит от JavaScript в собственных инструментах, какие выгоды это даёт и какие компромиссы приносит.За последние пару лет мы стали свидетелями заметных изменений в экосистеме JavaScript: многие популярные инструменты для разрабо…

  • вторник, 13 января 2026 г. в 00:00:04
javascript
VladX: как я создал язык программирования с русским синтаксисом в 13 лет

Привет, Хабр! Меня зовут Владислав, мне 13 лет, и я создал язык программирования VladX. В этой статье расскажу, как устроен его интерпретатор, почему я выбрал русский синтаксис и как можно попробовать язык в действии.Идея: почему русский синтаксис?Когда я начал изучать программирование, английские ключевые слова if, else, function казались магическими заклинаниями. Логика алгоритмов была понятна, но синтаксис создавал лишний барьер. Я подумал: а что если сделать язык, где ключевые слова будут н…

  • суббота, 10 января 2026 г. в 00:00:02
javascript
Корпоративный RAG как MCP-сервис: подключаем кодовую базу к IDE

В компаниях с несколькими продуктами знания о коде и архитектуре почти неизбежно расползаются. Часть живёт в репозиториях, часть — в статьях с архитектурными решениями, часть — в корпоративной базе знаний (в нашем случае — Confluence). На небольшом масштабе это выглядит как порядок. Но по мере роста начинают проявляться системные эффекты.Появляется дублирование функционала с разными подходами. Сложнее становится погружаться в новый продукт при кросс‑командных переходах. Поиск по каждому репозит…

  • пятница, 9 января 2026 г. в 00:00:05
javascript
JavaScript: заметка об Anchor Positioning API

Привет, друзья!В этой небольшой статье мы вместе с вами немного пощупаем новый Web API - Anchor Positioning.Anchor Positioning API предоставляет новые возможности для связывания элементов между собой. Одни элементы являются якорями (якорными, anchor elements), другие - позиционируемыми относительно якорей (закрепленными, anchor-positioned elements). Размер и положение позиционируемого элемента может определяться размером и положением якорного элемента.Кроме того, с помощью CSS можно:определять …

  • пятница, 9 января 2026 г. в 00:00:05
javascript
Насколько быстро браузеры могут обрабатывать данные в Base64?

Base64 — это схема кодирования двоичных значений в текст, преобразующая произвольные двоичные данные (например, изображения, файлы или любые байтовые последовательности) в безопасную печатную ASCII-строку, состоящую из 64-символьного алфавита (A–Z, a–z, 0–9, +, /). Браузеры применяют эту схему в JavaScript для встраивания двоичных данных непосредственно в код/HTML или для передачи двоичных данных в виде текста.Недавно в браузерах появились удобные и безопасные функции для обработки Base64: Uint…

  • четверг, 8 января 2026 г. в 00:00:07
javascript
JavaScript: практическое руководство по Blob, File API и оптимизации памяти

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

  • четверг, 8 января 2026 г. в 00:00:06