В Go нет числовых error codes как в C. Вместо этого используют sentinel errors и custom error types. Sentinel: var ErrNotFound = errors.New("not found") — проверяешь через errors.Is(err, ErrNotFound). Custom type: type ValidationError struct { Field, Message string } с методом Error() string — проверяешь через errors.As(err, &ve). Для gRPC используй status.Error(codes.NotFound, "..."). Для REST — маппинг domain errors на HTTP коды в handler слое. Группируй ошибки по пакетам: каждый пакет определяет свои ошибки.
Как организовать error codes?
Middle
413 просмотровAFK Offer AI
Что такое tail recursion?