generated from VLADIMIR/template
update
This commit is contained in:
@@ -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`; не добавляй ручное форматирование, генераторы и
|
||||
|
||||
Reference in New Issue
Block a user