На странице собраны вопросы по Java — от проверки базовых принципов до практического применения и архитектурных решений. В подборке чаще встречаются темы: backend, database, optimization.
CI/CD автоматизирует сборку, тестирование и доставку приложения настроить Git и определить триггеры запуска pipeline подключить CI-сервер: Jenkins, GitLab CI или GitHub Actions запускать сборку и юнит-тесты…
Обработка исключений в микросервисной архитектуре микросервисы — автономные сервисы с изолированной бизнес-логикой централизованный сбор и логирование ошибок, например с помощью ELK или Prometheus обработка на уровне…
Таймауты и ретраи во взаимодействии микросервисов сетевые запросы выполняются с ограниченным временем ожидания таймауты не позволяют запросам зависать надолго экспоненциальная задержка между ретраями уменьшает…
Основные рекомендации по переопределению equals и hashCode для entity Методы equals и hashCode обязаны соответствовать общему контракту: если equals возвращает true, значения hashCode должны совпадать сравнивать…
Как работать с тестовыми стендами? окружения Dev, QA и Prod отличаются уровнем стабильности и правами доступа Dev предназначен для локальной разработки и быстрых изменений, поэтому часто бывает нестабильным QA…
Как правильно сделать класс иммутабельным? не использовать сеттеры и методы, изменяющие состояние объявить все поля как final или константы выполнять инициализацию полей только в конструкторе клонировать ссылки на…
Как спроектировать сетевой запрос в Android? Работа с сетью в Android Выполнять запрос в асинхронном режиме с использованием Coroutines, RxJava или Callbacks Для выполнения HTTP-запросов используются библиотеки…
Область: обработка ошибок, backend, REST API Для этого применяют глобальные обработчики исключений, например @ControllerAdvice в Spring. Обработка ошибок выносится за пределы контроллеров, благодаря чему соблюдается…
deadlock: взаимная блокировка ресурсов livelock: бесконечное изменение состояний без продвижения исключать циклические зависимости между ресурсами задавать единый порядок захвата блокировок (lock ordering)…
В SQL конструкция WHERE отбирает строки до группировки Оператор GROUP BY формирует агрегированные группы WHERE не работает с результатами агрегации Для фильтрации агрегатов используется HAVING HAVING выполняется после…
протокол авторизации, предоставляющий доступ к ресурсам три основные стороны: клиентское приложение, сервер авторизации и ресурсный сервер клиент получает разрешение пользователя, являющегося владельцем ресурса после…