методы строк для поиска подстроки в JS indexOf() находит индекс первого совпадения при движении слева направо lastIndexOf() определяет индекс последнего совпадения, выполняя поиск справа налево возвращают индекс…
Опыт диагностики утечек памяти и действия при критическом расходе RAM профилирование памяти: использую инструменты профилирования (Valgrind, perf, VisualVM, Memory Profiler) анализ дампов: изучаю heap snapshot и…
Логирование позволяет отслеживать события в приложении и играет ключевую роль в его диагностике и мониторинге. Sentry — средство отслеживания ошибок, которое собирает stack trace, объединяет события по проблемам и…
Утечка памяти возникает, когда программа продолжает удерживать память, которая уже не требуется Обычно причина заключается в том, что объекты или ресурсы не освобождаются, хотя приложение больше ими не пользуется…
Как локализовать дефект, если обновление сайта не отображается? Проверить кэш браузера: очистить его или выполнить принудительное обновление Проверить, был ли обновлённый код задеплоен на сервер Проверить CDN: срок…
Локализация проблемы при отправке документа проверить логи отправки: статус вызова API, время выполнения и payload проанализировать HTTP-коды ответа: 200-299 — запрос успешно обработан и документ отправлен 400 —…
сначала анализировать имеющееся решение и находить "узкие места" — операции, обладающие наибольшей сложностью выбирать алгоритмы с более высокой эффективностью и меньшей асимптотикой, например O(n log n) вместо O(n²)…
Как обнаружить утечку памяти при переходе между сценами Контекст: управление памятью в интерфейсах, играх и приложениях Применить профилирование памяти с помощью Memory Profiler, Instruments или VisualVM Сопоставить…
Контекст: диагностика и профилирование Выявление с помощью heap dump и профайлеров (VisualVM, YourKit) Поиск объектов с неожиданно длительным временем жизни Проверка ссылок, из-за которых сборщик мусора не может…
Как исследовать проблему с платежом, который не появляется после рефреша при ответе 200 ошибка на фронтенде или в кэше — проверить обновление UI и удаление локальных данных корректность данных — сопоставить ответ API…
Для работы с асинхронными HTTP-запросами через fetch API применяется AbortController, позволяющий отменять операции Сначала создаётся контроллер: const controller = new AbortController() Затем его сигнал передаётся…
Для синхронных исключений применяют глобальный обработчик ошибок через window.onerror Чтобы подробно отслеживать ошибки загрузки ресурсов и JavaScript, используют window.addEventListener('error', ...) Событие…