React Error Boundaries: класс с методом componentDidCatch Перехватывают ошибки дочерних компонентов и не позволяют им разрушить всё дерево Дают возможность отобразить резервный UI вместо компонента с ошибкой…
Чем отличаются errors.Is, errors.As и errors.Join Улучшения работы с ошибками, появившиеся в Go 1.13 и более поздних версиях errors.Is определяет, присутствует ли в ошибке заданная целевая ошибка: сравнивает её через…
Реализация офлайн-приложений и кэширования с помощью Service Workers Service Worker — фоновый скрипт, расположенный между приложением и сетью Он перехватывает запросы и выполняет программное кэширование с…
Интеграция с внешним API или сервисом Настроить повторные попытки (retry) с экспоненциальным увеличением интервала Задать тайм-ауты для запросов и обрабатывать возникающие ошибки При недоступности сервиса сохранять…
кастомные ошибки — обычный способ сделать обработку ошибок точнее новый класс наследуют от встроенного класса Error тип задают через свойство name, например CustomError для контекста добавляют специализированные поля…
Как проверить сохранение данных в БД при скрытых сбоях контроль целостности посредством транзакций (ACID) регистрация операций записи в audit log контроль уникальности и ссылочной целостности, включая внешние ключи…
Улучшить алгоритм и уменьшить его сложность, например перейти с O(n²) на O(n log n) Исключить повторные вычисления с помощью кэширования или мемоизации Свести к минимуму обращения к внешним ресурсам, таким как база…
Иерархия исключений Python Все исключения наследуются от базового класса BaseException Ключевым классом для ошибок служит Exception: от него производятся все пользовательские исключения Подклассы Exception объединены…
Как эмулировать position: sticky при отсутствии поддержки CSS не предлагает прямой fallback без JavaScript Применять отслеживание прокрутки через JS с помощью события scroll Определять положение элемента относительно…
Клиентские и серверные HTTP-ошибки: статусы 4xx и 5xx Ошибки на стороне клиента — HTTP 4xx Основные статусы: 400 Bad Request — запрос сформирован некорректно 401 Unauthorized — требуется пройти аутентификацию 403…
Антипаттерны аварийного завершения программы Exit внутри глубоко расположенного кода — неожиданный вызов exit/abort из функций Пропуск обработки ошибок — отсутствие реакции на ошибки при критическом fail-fast…
Минусы обработки ошибок с помощью .NET Exception Исключения требуют значительных ресурсов CPU и памяти Частое применение исключений может ухудшать производительность Поток выполнения (flow control) становится сложнее…