導入
プログラムが大きくなると、ファイルを分けて整理します。Go はコードを パッケージ 単位でまとめ、プロジェクト全体を モジュール として管理します。
説明
同じパッケージ内では、大文字で始まる名前が「公開」(他パッケージから使える)、小文字は「非公開」というルールがあります。
package mathutil
// Add は公開されている(大文字始まり)→ 他パッケージから呼べる
func Add(a, b int) int {
return a + b
}
// helper は非公開(小文字始まり)→ このパッケージ内でだけ使える
func helper() int {
return 0
}
プロジェクトを始めるときは、ターミナルで次を実行してモジュールを初期化します。
go mod init example.com/myapp
これで go.mod というファイルが作られ、依存ライブラリの管理が始まります。外部ライブラリを使うときは次のようにします。
go get github.com/some/library # ライブラリを追加
go mod tidy # 使っていない依存を整理
import した標準ライブラリ(fmt など)は、Go に最初から付いてくるパッケージです。外部のものだけ go get で取り込む、と覚えておきましょう。
やってみよう
自分のコードで関数名を大文字始まりにするか小文字始まりにするかで、他のパッケージから使えるかどうかが変わります。「公開したい関数・型は大文字始まり」というルールを意識してみましょう。次章では、Go の目玉である並行処理に進みます。