8
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Go 言語を学ぶAdvent Calendar 2023

Day 14

【Go言語】Goらしい命名規則

Last updated at Posted at 2023-12-16

Goらしい命名とは

公式見解によると、基本的にEffective Goに基づいて命名すること

変数名の命名

  • _(アンダースコア)を使用せず、MixedCapsとする。例えば、max_lengthではなくmaxLength
  • 他パッケージから参照できる変数は最初の文字を大文字(MaxLength)、参照できない変数は小文字から始める(maxLength)。
  • 頭字語は大文字または小文字を統一。例: URLurlなど。
  • エラー型の変数名にはErrorを接尾語として付ける。例: MarshalerError
  • ローカル変数はスコープが限定されているため、短い名前が好まれる。例: reqi

パッケージの命名

  • パッケージ名は簡潔で内容を想像しやすい名前が適切。例: byteshttp
  • 一般的な名前(utilcommon)は避け、内容を明確に示す名前にする。
  • パッケージ名は小文字の1単語が慣習。スネークケースやキャメルケースは使用しない。
  • internalパッケージはモジュール外からアクセスできない特別な名前。

インタフェースの命名

  • 1つのメソッドのみを持つインタフェースには、-er接尾語を付けることがある。例: ReaderStringer
  • 複数のメソッドを持つインタフェースはその目的を反映した名前を選ぶ。例: net.Conn

レシーバーの命名

  • レシーバー名は型を反映した短い名前を使用する。例: rRequestの場合)、reRegexpの場合)。
  • 一貫性を持たせるために、同一型に対して同じレシーバー名を用いる。

参考

8
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?