This commit is contained in:
2026-10-01 16:12:38 +07:00
parent f8d78b04ff
commit 06c657f593
8 changed files with 152 additions and 28 deletions
+2
View File
@@ -186,6 +186,7 @@ SQL держи рядом с методом, которому он нужен.
`make generate`.
- Преобразование `proto ↔ domain/storage` находится в `app` или пакете,
которому принадлежат обе модели; бизнес-правила в mapping не прячь.
- Поля структур в mapping-литералах располагай вертикально: одно поле на строку.
- Любой mapping, принадлежащий сервису, находится в отдельной функции и файле
`*_mapper.go`, а не внутри метода сервиса.
- Модель, которой владеет один пакет, объявляй в этом пакете. Не создавай
@@ -270,6 +271,7 @@ go test ./...
- Аббревиатуры пишутся единообразно: `ID`, `URL`, `HTTP`, `JWT`, `SQL`.
- Используй префикс `I` в именах интерфейсов: `IFileStorage`, `IEmailSender`.
- Не прячь побочные эффекты в функциях с именами `Get`, `Map`, `Parse`.
- Сервисы и конструкторы называй по предметной области: `ScreenService` и `NewScreenService`; generic-имена `Service` и `New` запрещены.
- `New...` создаёт значение и возвращает ошибку только если создание реально
может завершиться ошибкой.
- Форматируй код `gofmt`; не добавляй ручное форматирование, генераторы и