Skip to content

Toolkit

Toolkit · pkg/

Первый шаг при создании проекта — подготовить инструментарий. До того как писать бизнес-логику, вы оборачиваете технологии которые будете использовать.


Что вы делаете на этом шаге

Вы не реализуете бизнес-логику. Вы создаёте обёртки над технологиями: базой данных, очередями, внешними API, кешем — чем угодно что нужно проекту.

Toolkit не импортирует internal/. Он не знает что такое User или Task. Он просто умеет сохранять, находить, публиковать, кешировать. Написали один раз — переносите в любой проект без изменений.


Services

Шаблонные обёртки над внешними системами. Один сервис — одна технология: repository, rabbit, cache, storage, elastic — что угодно. Каждый сервис — singleton, доступен через геттер из любого слоя. Описывает собственные интерфейсы-контракты — не зависит от internal/.

Services — как писать и структурировать

Infra

Инструменты которые нужны самому проекту, а не бизнесу: логгер, трейсер, eventbus, env vars. Инициализируются первыми — логгер нужен всем уже при старте.

Infra

Libs

Переиспользуемый код без состояния. HTTP-сервер, парсинг параметров, загрузка конфигов. Не singletons — импортируешь и используешь.

Libs


Toolkit готов — у вас есть все инструменты. Можно писать бизнес-логику.

Следующий шаг: Realm — бизнес-логика