Автор предлагает паттерн для Go-сервисов: вынести обвязку и все связанное с декодированием, валидацией, приведеним типов, кодированием из каждого хендлера в один обобщённый адаптер Wrap[In, Out] на транспорт.
Сервисная функция остается чистой - func(ctx, In) (Out, error) без малейшего следа HTTP, gRPC или JSON. Для каждого транспорта пишется один Wrap, который принимает decode + service function + encode и возвращает готовый http.Handler или gRPC-handler. Добавление нового эндпоинта сводится к decode/encode + одной строке в роутере, а middleware и интерцепторы работают как обычно, снаружи Wrap.
Старо как мир, но красиво. На фотке, кстати, самый настоящий врап. Погуглите, если не верите
21.05.2026
Похожее
05.06.2026
TigerFS
Файловая система — это просто API. А TigerFS — это файловая система, работающая ...
04.06.2026
Иггдрасиль
В статье про использование Yggdrasil в качестве встраиваемой Go-библиотеки. ...
03.06.2026
Мультиплеер
В статье автор рассказывает про архитектуру управления состоянием своей многопол...
02.06.2026
httptrace
Пакет net/http/httptrace из стандартной библиотеки Go позволяет отслеживать внут...