Когда context.WithValue лучше не использовать или использовать осторожно?
Что хотят услышать интервьюеры:
Суть: WithValue предназначен для request-scoped значений, а не для зависимостей и бизнес-параметров.
Ответ:
Пример:
ctx = context.WithValue(ctx, requestIDKey, id) Практический акцент: Оцените trade-off: простота, производительность, тестируемость, связность пакетов и цена поддержки.
Типичная ошибка: передавать через context repo, config или user input вместо явных аргументов.
Как отвечать на собеседовании: На собеседовании обязательно связывайте context с HTTP, БД, gRPC, очередями и graceful shutdown.