Где в структуре проекта расположить обертки для сторонних библиотек и API, как их назвать?

В структуре проекта на языке программирования Go, обычно логические компоненты размещаются в виде пакетов (packages). В случае необходимости использования сторонних библиотек и API, обертки можно разместить в отдельном пакете или внутри пакета, отвечающего за конкретную функциональность проекта.

Рассмотрим ситуацию, когда требуется использовать обертки для сторонней API. В этом случае можно создать отдельный пакет, в котором будут храниться все соответствующие обертки. Наименование пакета может зависеть от предметной области API или от конкретного названия используемой сторонней библиотеки.

Например, если мы работаем с API для отправки писем, можно создать пакет с названием "email" или "smtp", чтобы отразить суть функциональности пакета. Внутри этого пакета можно создать отдельные файлы с обертками для различных функций или методов API.

Таким образом, структура проекта может выглядеть примерно следующим образом:

myproject/
|- main.go
|- ...
|- email/
   |- client.go
   |- send.go
   |- receive.go
|- ...

В этом примере, пакет "email" содержит основной клиент "client.go" для взаимодействия с API, а также файлы "send.go" и "receive.go", которые предоставляют обертки функций или методов API для отправки и получения писем соответственно.

Следует отметить, что наименование пакета и файлов внутри пакета должны быть понятными и описывать содержащуюся в них функциональность. Это поможет другим разработчикам легче понимать структуру проекта и быстрее находить необходимые обертки.

В общем случае, размещение и наименование оберток в структуре проекта зависит от конкретных требований и принятых практик в команде разработки. Однако, рекомендуется придерживаться принципов модульности и четкого разделения отдельных компонентов проекта.