3. パッケージ
Go言語でのパッケージについて紹介します。
- 3.1 パッケージのインポート
- 3.2 パッケージ探索
3.1 パッケージのインポート
Go言語でパッケージを使うときには、
import "fmt"
のようにパッケージを指定します。
復数の場合、
import "fmt" import "strings"
のように並べて記述するもしくは、
import ( "fmt" "strings" )
のように記述することができます。
パッケージのインストールは go get [パッケージのリポジトリ] で行います。
go get github.com/BurntSushi/toml
インストールしたパッケージは以下のようにインポートします。
import "github.com/BurntSushi/toml"
上記の他にもいくつかのインポート方法があるので見てみましょう。
1) import
通常のインポートです。
import "github.com/BurntSushi/toml"
パッケージの関数は、以下のように使います。
// パッケージ名.関数名() toml.DecodeFile(略)
2) alias import
インポートするパッケージのエイリアスを設定します。
import t "github.com/BurntSushi/toml"
パッケージの関数は、以下のように使います。
// パッケージのエイリアス名.関数名() t.DecodeFile(略)
3) dot import
インポートするパッケージをドット(.)にします。
import . "github.com/BurntSushi/toml"
パッケージの関数は、以下のように使います。
dot importしたパッケージの関数は、パッケージ名を初略して使うことができます。
// 関数名() ※ パッケージ名は省略します。 DecodeFile(略)
4) blank import
インポートするパッケージをアンダースコア(_)にします。
import _ "github.com/BurntSushi/toml"
blank importの場合、パッケージのinitialize(init()) のみ実行されます。
3.2 パッケージ探索
importで指定したパッケージパスを元に以下の順番でパッケージの有無を探索していきます。
- vendor tree : パッケージ直下のvendorディレクトリ
- $GOROOT : goインストールディレクトリ
- $GOPATH : $GOPATHディレクトリ
vendorについては、以下のリンクを御覧ください。
Go 1.5 Vendor Experiment