Category : javascript

javascript
Three.js с нуля на практике: как за несколько часов создать аркадную 3D-игру. Часть 1

Привет! На связи Кристина, фронтенд-разработчик в отделе рекламных спецпроектов KTS.Наша команда создает визуально эффектные проекты, цель которых — привлечь внимание пользователей. Мы постоянно экспериментируем с разными технологиями и подходами, и вот, наконец, добрались до 3D-анимаций. Недавно я начала изучать Three.js и хочу поделиться своим опытом.В сети есть множество статей и уроков по Three.js для начинающих, но большинство из них — это теоретический материал. Я же хочу показать, как со…

  • суббота, 15 февраля 2025 г. в 00:00:06
javascript
Каррируем React-компоненты: функциональные паттерны на фронтенде

Современный React все больше соответствует идеалам функционального программирования.Ежедневно мы пользуемся подходами из мира ФП, зачастую даже не подозревая об этом.Эти паттерны плотно укоренились в сознании фронтенд-разработчиков, делая наш код значительно чище, читаемее и предсказуемее.Вот лишь некоторые из них:Декларативный код. Мы не говорим как рендерить, мы говорим что.UI = f(state). Интерфейс  –  функция от состояния.Композиция. Сложные компоненты собираются из простых независимых блоко…

  • четверг, 13 февраля 2025 г. в 00:00:08
javascript
Попытка написать свою реализацию встроенных хуков состояния в React + создание простого стейт менед…

Немного предысторииНедавно давно я смотрел ничем не примечательный техническое интервью и услышал фразу от интервьюируемого: «Ну можно написать свой useReducer или useState». Мне врезалась эта фраза в голову, ибо я никогда в серьез не задумывался как они работают под капотом и в исходниках особо не копался, максимум в типах. Из-за этого задача оказалась довольно сложной и интересной для меня ибо много получил много новой информации за довольно короткий срок и ее было сложно переварить и осознат…

  • четверг, 13 февраля 2025 г. в 00:00:07
javascript
Как мы боролись с лишними рендерами в react

Привет, друзья!Давайте представим себе такую задачку. Есть страница, где в ее правой части располагается множество всевозможных виджетов - таблицы, списки, графики и многое многое другое. Все эти компоненты сами по себе довольно сложные и мы не хотим, чтобы происходил их ререндер без особой на то надобности. В левой части страницы располагается своего рода меню - список с названиями каждого виджета и счетчиком около названия. Этот счетчик показывает количество данных того или иного виджета. При…

  • среда, 12 февраля 2025 г. в 00:00:08
javascript
Drizzle ORM — современная типизированная ORM для реляционных БД в JS/TS

Удивился, что про столь популярный продукт не было статьи на Хабре, срочно это исправляю. Drizzle ORM - это #2 самая желаемая ORM по опросам, и она даже вошла в top 50 JavaScript Rising Stars 2024, заняв 27 место.Что это такое?Drizzle - это современная TypeScript/JavaScript ORM, которая работает со всеми основными реляционными БД (PostgreSQL, MySQL, SQLite и др.).Её главные особенности: малый вес (~7.4kb), отсутствие внешних зависимостей и умение работать в различных средах (Node, serverless ср…

  • среда, 12 февраля 2025 г. в 00:00:06
javascript
JavaScript: структуры данных и алгоритмы. Часть 8

Привет, друзья! В этой серии статей мы разбираем структуры данных и алгоритмы, представленные в этом замечательном репозитории. Это восьмая часть серии. Сегодня мы поговорим об алгоритмах сортировки. Код, представленный в этой и других статьях серии, можно найти в этом репозитории. Интересно? Тогда прошу под кат. Первая часть Вторая часть Третья часть Четвертая часть Пятая часть Шестая часть Седьмая часть ❯ Сортировка Как работают сортировки ❯ Сортировка пузырьком Описание Википедия YouT…

  • среда, 12 февраля 2025 г. в 00:00:05
javascript
Найди x: React + MobX + SSR + x = Счастье

Приветствую всех читателей!В мире информационных технологий наблюдается устойчивая тенденция перехода от традиционных десктопных приложений к веб-приложениям. Сегодня веб-приложения достигли значительной сложности и представляют собой интересную область разработки. Мне посчастливилось участвовать в создании одного из таких приложений, и я рад поделиться своим опытом и знаниями с вами.О продуктеХочу сказать несколько слов о продукте, в разработке которого я участвую. Это платформа для Интернета …

  • среда, 12 февраля 2025 г. в 00:00:05
javascript
LocaleCompare в JavaScript: правильная и удобная сортировка строк с учетом языка

Привет, меня зовут Дмитрий, я React-разработчик, и сегодня хочу рассказать о методе localeCompare в JavaScript. Мне кажется, что этот метод не так часто используется при сортировке строк, хотя он действительно заслуживает внимания. Многие привыкли к стандартным методам сравнения, но localeCompare позволяет учесть важные нюансы, такие как языковые особенности, регистр символов и числовую сортировку. Я постараюсь раскрыть все его возможности и показать, как можно использовать его для улучшения со…

  • среда, 12 февраля 2025 г. в 00:00:03
javascript
Backend-for-Frontend (BFF): решение проблемы взаимодействия фронтенда и бэкенда

Проблема взаимодействия фронтенда и бэкендаВ современной разработке веб-приложений одной из ключевых проблем является несовместимость между фронтендом и бэкендом. Фронтенд-команды часто вынуждены ждать, пока бэкенд предоставит необходимые API, а бэкенд-разработчики тратят время на адаптацию логики под изменения в интерфейсе. Это приводит к задержкам в разработке, сложностям в тестировании и постоянным несоответствиям в данных.Что такое Backend-for-Frontend (BFF)?Backend-for-Frontend (BFF) — это…

  • вторник, 11 февраля 2025 г. в 00:00:08