Найти в Дзене
Bitrix Как правильно чистить кэш (общий, управляемый, композитный)
В Битрикс три основных слоя кэша: общий (кэш компонентов в /bitrix/cache), управляемый/тегированный (логика «по тегам» в /bitrix/managed_cache) и композитный HTML (целые страницы в /bitrix/html_pages). Чистим их по разным поводам и разными способами: через публичную панель «Очистить кэш», через админку «Настройки → Инструменты → Очистка файлов кэша», точечно — программно (очистка по тегу), радикально — удалением содержимого соответствующих папок. Начинайте с точечной очистки, избегайте «убить всё» в пиковые часы, после — прогрейте ключевые страницы...
3 месяца назад
Подготовка к собеседованию frontend (Задачки по typescript)
Для наглядности решаем задачки в сервисе https://www.typescriptlang.org/ Начнем с простой задачи на типизацию функции, проставляем решение в места с ... const X = {a:1, b:2, c: 3}; function getProperty<...>(obj: ..., key: ...): ... { return obj[key]; } getProperty(X, 'c'); Решением делитесь в комментариях Также типизируем функцию, но задачка гораздо сложней: в TODO добавь корректные дженерики и типы параметров/возврата: const X = { a: 1, b: 'bee', c: true, d: { n: 42 } }; function getMany(/* TODO */) { return keys...
3 месяца назад
Подготовка к собеседованию frontend (Symbol.iterator)
Symbol.iterator делает любые ваши объекты «родными» для for...of, спреда ([...]), Array.from, деструктурирования и т. п. Ниже будут приведены реальные примеры для реальных задач. Часто нужно получить список рабочих дат для планирования задач/напоминаний, генерации слотов и т. п. Полезно для вычисления контекста: ближайший positioned родитель, контейнер с data-*, ближайшая форма и т...
3 месяца назад
Подготовка к собеседованию frontend (тонкости подключения стилей и скриптов)
CSS почти всегда рендер-блокирующий → кладём в <head>, оптимизируем через critical CSS + preload/media. Скрипты по умолчанию парсер-блокируют → используем defer, а для модулей — type="module" (они «деферятся» сами). Для CDN — SRI + crossorigin. Шрифты — preload + font-display. Следим за порядком подключений, кэшем и CORS. Ниже — все тонкости с проверенными приёмами и ловушками Пример «чистого» подключения (html): Critical CSS inline, остальное — отложить: Альтернативные темы: Можно подключать несколько таблиц и переключать их в рантайме: <link rel="preload" href="/fonts/Inter...
3 месяца назад
«Method not found» в Telegram WebView: как я искал причину ошибки
Несколько дней гонялся за таинственным method not found: как я искал причину и почему виноват оказался Telegram. Пару дней подряд мне в Sentry прилетал лаконичный репорт: Error: method not found Без стека и без понятного источника. Проект — Vue + vue-router. В Chrome и мобильных браузерах всё стерильно. Значит, это точно мой косяк — решил я и ушёл дебажить. Проект на Vue + vue-router. В Chrome и мобильных браузерах — стерильно. Иногда в проде в Sentry прилетает лаконичное: Error: method not found Без стека, без явного источника...
4 месяца назад
Как общаться с ИИ - простым языком как писать промпты
Привет! В этой статье мы простыми словами разберём, что такое «промпт» и почему от него так зависит ответ искусственного интеллекта. Вы узнаете, как правильно формулировать запросы к нейросети, чтобы получать понятные и полезные ответы. Мы дадим советы для обычных пользователей без технических знаний и покажем примеры плохих и хороших промптов с пояснениями. Поехали! Промпт (от англ. prompt — «подсказка, запрос») — это сообщение или вопрос, который вы отправляете искусственному интеллекту (например, чат-боту вроде ChatGPT)...
6 месяцев назад
Ниндзя: кто они такие на самом деле? История без мифов
Когда слышишь слово "нинзя", в голове тут же всплывают чёрные костюмы, сюрикэны, дымовые шашки и геройские прыжки по крышам. Но настоящие ниндзя — это не просто герои комиксов и аниме, а реальные люди, которые умели быть невидимыми, но вовсе не в магическом смысле. Давайте разберемся, кем они были на самом деле! История ниндзя начинается где-то в конце эпохи Хэйан, когда в Японии начали греметь гражданские войны, а самураи рубились за власть и земли. В это время возникла потребность в "грязной работе":...
7 месяцев назад
Развёртывание Storybook в проекте на Quasar 2: пошаговое руководство
Storybook – это инструмент для разработки и тестирования UI-компонентов в изоляции. С его помощью вы можете просматривать и документировать компоненты вашего приложения, не запуская само приложение. В этом руководстве рассмотрим, как настроить Storybook в проекте на Quasar 2 (фреймворке на базе Vue 3) с поддержкой TypeScript и Composition API. Мы пройдем все шаги – от создания проекта Quasar до запуска Storybook – и уделим внимание интеграции компонентов Quasar, настройке плагинов, тем и решению возможных ошибок...
9 месяцев назад
Гид по Итальянским заведениям от флорентийского повара
Недавно я посетил мастер-класс по приготовлению пасты, где опытный пастамейкер поделился секретами и порекомендовал лучшие заведения, магазины и бренды Италии и в частности во Флоренции. Этот уникальный список откроет вам все богатство итальянской кухни и поможет найти истинные гастрономические сокровища города...
1 год назад
Инструменты анализа производительности сайта
В современном цифровом мире скорость и производительность сайта играют ключевую роль в привлечении и удержании пользователей. Медленная загрузка страниц может привести к потере посетителей и снижению рейтинга в поисковых системах. К счастью, существует множество инструментов, которые помогают анализировать и улучшать производительность веб-сайтов. В этой статье мы рассмотрим самые популярные и эффективные из них. Описание: Онлайн-инструмент от Google, который анализирует контент веб-страницы и предоставляет рекомендации по ее ускорению...
1 год назад
Куда исчезла скорость? Размышления о деградации производительности фронтенда
Вспомните, как когда-то веб-страницы загружались мгновенно, а интерфейсы были просты и понятны. Сегодня же многие сайты становятся настоящим испытанием для терпения: страницы загружаются долго, а интерфейсы реагируют с задержкой. Что произошло? Почему современные веб-приложения, обладая всеми преимуществами технологий, стали работать медленнее? Тяжеловесные фреймворки: палка о двух концах JavaScript-фреймворки, такие как React, Angular и Vue.js, совершили революцию в веб-разработке. Они предоставили разработчикам мощные инструменты для создания сложных и интерактивных приложений...
1 год назад
Как не стать жертвой телефонных мошенников
В современном мире, где технологии играют ключевую роль в нашей повседневной жизни, телефонные мошенничества становятся все более изощренными. Мошенники используют разнообразные методы, чтобы обманом заставить людей расстаться со своими деньгами или личной информацией. Важно быть осведомленным о том, какие приемы используют мошенники, чтобы защитить себя...
1 год назад