Где хранятся протофайлы

«Где хранятся протофайлы» — вопрос из категории Архитектура, который задают на 23% собеседований Golang Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Протофайлы (.proto) обычно хранятся в репозитории проекта, часто в отдельной директории, например proto/ или api/. Они могут быть частью монорепозитория или выделены в отдельный репозиторий для общего доступа между сервисами.

Пример структуры:

project/
├── proto/
│   ├── service.proto
│   └── messages.proto
├── go.mod
└── main.go

Для работы с ними в Go используется protoc (компилятор Protocol Buffers) и плагины, например protoc-gen-go. Сгенерированный код (.pb.go) обычно не хранится в репозитории, а создается при сборке.