コメントを使うと、コードの動作に影響を与えることなく、コードにメモを残せます。
単一行コメントは、行のどこかで//から始まります。
コンパイラーは、//からその行の終わりまでのすべてを無視します。
同じ行でコードの後ろにコメントを書く場合、それはインラインコメントと呼ばれることがよくあります。
複数行コメントは、/*で始まり、*/で終わります。どちらも行のどこにあってもかまいません。
コンパイラーは、その間にあるものを、1行でも複数行にまたがっても無視します。
// This is a single-line comment on its own line
x := 1 // This is an single-line comment inline with code
fmt.Println(x) // prints 1
/*
This is a valid
multiline comment.
*/
/* This is also a valid multi-line comment. */
コメントは、書く場所によって異なる役割を果たします。
コードコメントは、何をしているかではなく、なぜそうしているのかを説明します。 ある判断の理由がコードから明らかでないときに使いましょう。
results = results[1:] // skipping the header row
ほとんどの場合、明確に書かれたコードはそれ自体で意味が通じるので、コメントは必要ありません。 ときには、コードが複雑なことや予想外のことをする必要がある場合があります。そのようなコードにはコメントを付けるべきです。
ドキュメントコメントは、パッケージ、変数、関数を説明するために使います。
このドキュメントは、あなたのコードを_使う_方法を知りたい他のプログラマーに向けたものです。
コードが何をするのか、どう使うのかを、大まかに説明します。
コード自体がどう動くかの詳細は含めません。
ドキュメントコメントは宣言の直前に置き、コメントと宣言の間に空行を入れません。
godocがそれらを解析して、pkg.go.devで見られるようなパッケージドキュメントを生成します。
ドキュメントコメントは、識別子の名前で始まり、ピリオドで終わる完全な文にするべきです。
エクスポートされた識別子(大文字で始まるもの)に対するドキュメントコメントは、生成されるドキュメントに表示されます。 エクスポートされていない識別子(大文字で始まらないもの)に対するドキュメントコメントは表示されませんが、コード内で役立つ文脈を提供することはできます。
パッケージを説明するコメントは、パッケージ名で始まり、そのパッケージが何をするのかを説明します。
// Package kelvin provides tools to convert temperatures to and from Kelvin.
package kelvin
関数を説明するコメントは、関数名で始まり、その関数が何をするのかを、引数と戻り値を含めて説明します。
// CelsiusFreezingTemp returns an integer value equal to the temperature at which water freezes in degrees Celsius.
func CelsiusFreezingTemp() int {
return 0
}
変数を説明するコメントは、変数名で始まり、その変数が何を表すのかを説明します。
// TemperatureFahrenheit represents a certain temperature in degrees Fahrenheit.
var TemperatureFahrenheit float64
ドキュメントコメントの完全な仕様については、Goドキュメントガイドを参照してください。