В большинстве случаев соглашение о присвоении имен в Go состоит в том, чтобы использовать только верблюжий регистр и начинать с верхнего регистра, если это открытое поле, и нижнего регистра, если это не так. Но в словах, которые являются аббревиатурами, такими как API или URL, они написаны в верхнем регистре, например. func ProxyURL(fixedURL *url.URL)
в пакете http .
РЕДАКТИРОВАТЬ: Я искал немного больше, и в Go Code Review Комментарии есть рекомендации для сокращений. В разделе Инициализмы говорится:
Слова в именах, которые являются инициализмами или аббревиатурами (например, «URL» или «NATO»)
иметь последовательный случай. Например, «URL» должен отображаться как «URL» или
«url» (как в «urlPony» или «URLPony»), никогда не «Url». В качестве примера:
ServeHTTP не ServeHttp. Для идентификаторов с несколькими инициализированными
«слова», используйте, например, «xmlHTTPRequest» или «XMLHTTPRequest».
Это правило также применяется к «идентификатору», когда оно сокращенно от «идентификатора», поэтому
напишите «appID» вместо «appId».
Таким образом, правило для аббревиатур состоит в том, что они должны иметь постоянный регистр. В вашем случае, поскольку они должны начинаться с заглавной буквы «А», вы должны написать их как «API».
Кроме того, это только мое личное мнение, и я знаю, что код в примере, возможно, не является точным кодом, который вы используете, но если это так, я считаю плохой практикой включать имя структуры в имена полей. Вы делаете api.APIField
, но api.Field
легче читать, и если вы знаете, что объект является API, то нет никаких сомнений в том, что Поле принадлежит API.