Реализация офлайн-приложений и кэширования с помощью Service Workers Service Worker — фоновый скрипт, расположенный между приложением и сетью Он перехватывает запросы и выполняет программное кэширование с…
Улучшить алгоритм и уменьшить его сложность, например перейти с O(n²) на O(n log n) Исключить повторные вычисления с помощью кэширования или мемоизации Свести к минимуму обращения к внешним ресурсам, таким как база…
Как эмулировать position: sticky при отсутствии поддержки CSS не предлагает прямой fallback без JavaScript Применять отслеживание прокрутки через JS с помощью события scroll Определять положение элемента относительно…
Антипаттерны аварийного завершения программы Exit внутри глубоко расположенного кода — неожиданный вызов exit/abort из функций Пропуск обработки ошибок — отсутствие реакции на ошибки при критическом fail-fast…
Какие инструменты использовать для поиска утечек памяти в Android? Android Profiler — встроенный в Android Studio инструмент наблюдения за памятью LeakCanary — библиотека, автоматически выявляющая утечки MAT (Memory…
Категории инструментов для отладки и тестирования API HTTP-клиенты Postman, Insomnia — позволяют вручную отправлять запросы и проверять результаты Фреймворки автоматизированного тестирования JUnit, pytest, Mocha —…
Инструменты для работы с базами данных Клиенты SQL, такие как DBeaver, pgAdmin и MySQL Workbench, предоставляют графический интерфейс для выполнения запросов и администрирования базы данных Консольные утилиты, включая…
Promise — объект JavaScript, описывающий результат асинхронной операции. Основные методы экземпляра: then(onFulfilled, onRejected) — назначает обработчики успешного или ошибочного завершения и возвращает новый…
Основные проблемы многопоточности в iOS Гонка данных (data race) — несколько потоков одновременно обращаются к общему ресурсу без необходимой синхронизации Взаимоблокировка (deadlock) — потоки удерживают ресурсы и…
Жизненный цикл компонентов в React Компонент React проходит последовательные этапы — от рендера до удаления Для классовых компонентов выделяют 3 фазы: Mounting, Updating и Unmounting Mounting: constructor → render →…
работа с WebSockets — веб-сокеты, real-time в браузере: native WebSocket API (стандартный JS) на сервере (Node.js): распространённый модуль — ws серверная альтернатива: Socket.IO — более высокий уровень абстракции над…
ConcurrentModificationException сообщает о некорректном изменении коллекции во время итерации независимо от числа потоков; поэтому однопоточная модификация с нарушением правил итерации — частая причина.