Category : javascript

javascript
Магия ClientOnly: повышаем производительность и безопасность в Nuxt-приложениях

ВведениеПривет, хабровчане! 👋 Сегодня поговорим о компоненте ClientOnly в Nuxt, который я часто использую в своих проектах. И нет, это не потому что я не знаю как починить SSR-ошибки. Многие воспринимают его просто как костыль для решения проблем с SSR, но на самом деле этот инструмент может принести немало пользы с точки зрения производительности и даже безопасности. Давайте разбираться без лишней духоты и на реальных примерах!Что такое ClientOnly и зачем он нужен?ClientOnly — это встроенный к…

  • суббота, 5 июля 2025 г. в 00:00:07
javascript
System Design: Как бизнес влияет на финальный вид ИТ-Системы и выбор технологий

Представьте, вам поступает задача спроектировать абсолютно новую ИТ-Систему, которую ранее не видел свет. Вам озвучивают сроки в которые нужно уложиться и вы наполненные энтузиазмом и решительностью, приступаете как и положено с выявления требований к этой системе. Далее происходит этап отрисовки верхнеуровнего дизайна, где вы намечаете основные компоненты системы и способы их взаимодействия. Далее после получения одобрения от своих коллег, технического сектора, вы переходите на этап детальной …

  • суббота, 5 июля 2025 г. в 00:00:06
javascript
БЭМ + Tailwind: прагматичный гибрид для современного фронтенда

Введение: конец войны методологийАААААААААААА!!! 15 МИНУТ МОЕЙ ЖИЗНИ ТОЛЬКО ЧТО УШЛИ НА ПРИДУМЫВАНИЕ ИМЕНИ ГРЁБАНОМУ DIV-КОНТЕЙНЕРУ!Знакомо, да? Не я один, кто неистово бился головой о клавиатуру, пытаясь придумать, как назвать очередную обертку для обертки внутри обертки?Я УСТАЛ. Мы все устали. Устали от:Бесконечного .header__nav-container__menu-wrapper__item-list__element 😵‍💫Спора на код-ревью о том, должен ли это быть block__element или просто новый block 🤬"Не используй margin на блоке! …

  • суббота, 5 июля 2025 г. в 00:00:05
javascript
Гайд на полиморфизм. Что там под капотом?

В прошлой статье Гайд на полиморфизм. Основные идеимы рассмотрели теоретическую основу такого понятия как полиморфизм и изучили различные его виды. Теперь предлагаю перейти к рассмотрению того как оно устроено «под капотом».Проблема Неискушенный читатель может задаться вопросом:А какая вообще проблема передавать в функцию данные разных типов? В JavaScript, Python, Clojure это делается вообще без проблем. Компилятор просто проверит корректность, а дальше передавай что хочешьК сожалению, не все …

  • суббота, 5 июля 2025 г. в 00:00:04
javascript
Как выжить в мире сложных интерфейсов в 2025-м: 7 работающих рецептов от React и CSS до дизайн-сист…

Как говорил дядя Бен, большие продукты — это и большая ответственность. И без сложных интерфейсов тут никуда. А с ними и исследования становятся труднее, и встречается больше препятствий на этапе кода — от нюансов реактивного программирования до риска утонуть в разнообразии CSS-спецификаций. Для МойОфис как мультипродуктовой экосистемы со сквозными сценариями — все эти вопросы очень актуальны! Поэтому на прошлой неделе JS-еры, дизайнеры и UX-исследователи нашей и других компаний собрались на ми…

  • суббота, 5 июля 2025 г. в 00:00:03
javascript
Telegram-бот, который умеет слушать: разработка на grammY

Представьте: собеседник отправляет голосовое сообщение на пять минут, а вы не можете отвлечься и прослушать все от начала до конца? Что делать? Максим, ведущий канала RED Group, подошел к вопросу творчески и показал, как на базе grammY и SpeechService в NestJS разработать бота, который будет слушать и структурировать по таймкодам голосовые сообщения. Инструкция будет полезна новичкам, которые только погружаются в работу с Telegram Bot API с помощью JavaScript. Кроме того, в конце материала мы…

  • пятница, 4 июля 2025 г. в 00:00:07
javascript
System Design: Чек-лист по сбору и фиксации требований на все случае жизни

Привет, Хабр!Я — Зинченко Иван, IT-Lead в направлении разработки цифровых каналов в Газпромбанке. За последние 3 года я провёл и прошел десятки собеседований по System Design и заметил: 80% кандидатов проваливаются на одной и той же ошибке - не фиксируют основные требования к системе.В этой статье разберем чем чреват этот критичный промах, который даже сильные разработчики допускают при проектировании систем. Для чего нам нужны требования? Сбор и фиксация требований это первый и самый важный э…

  • пятница, 4 июля 2025 г. в 00:00:06
javascript
3 книги по теме тестирования, за качество которых отвечает Read IT Club

Когда в одной из купленных для нашей ИТ-библиотеки книг начали попадаться забавные терминологические ляпы — вроде «жирных клиентов» и «микрослужб», — нам стало понятно: переводчик явно не из отрасли. Чтобы избежать таких «фейлов» и помочь сделать техническую литературу понятнее, в КРОК появился Read IT Club — команда рецензентов и экспертов, которые добровольно и безвозмездно правят и переводят книги по ИТ.Все началось с небольшой инициативы внутри компании, но клуб быстро вырос до 40+ человек …

  • пятница, 4 июля 2025 г. в 00:00:06
javascript
У меня три календаря и одна жизнь: как я перестал быть курьером между женщинами

Я разведён и женат, сын живёт поочерёдно: неделя у меня, неделя у своей мамы. Казалось бы, график прост, но реальность вносит коррективы: врач в четверг, поездка к бабушке на выходных - забыть что-то означает испортить планы всем и получить претензии. Моя схема: ✅ календарь с бывшей женой - только ключевое по сыну - переезды, врачи, собрания. ✅ календарь с моей женой: наша личная жизнь - свидания, поездки, дела. Без сына. ✅ семейный календарь (я + жена + сын): всё, что касается сына в мои неде…

  • четверг, 3 июля 2025 г. в 00:00:05