Go言語_プログラムの作成
hello worldプログラム
ソースコード
Go言語ではソースファイルの拡張子は「.go」とします。
例えば「hello.go」というようにファイルを命名します。
package main
import "fmt"
func main(){
fmt.Printf("hello world!\n")
}
パッケージについて
Go言語では、名前空間を分けるための仕組みとしてパッケージを使用します。
プログラムの先頭にパッケージ名を定義します。
「main」パッケージは、ライブラリではなく単独で動作するプログラムを定義します。
importについて
Go言語では、いわゆる標準ライブラリを用いる場合に、対象パッケージをimportしていきます。
パッケージについてドキュメントを確認するには、「godoc」コマンドを使用します。
例えばfmtパッケージのドキュメントが見たければ、次のように実行します。
$ godoc fmt
ブラウザでドキュメントを確認したい場合は次のように実行します。
$ godoc -http=":8080"
httpサーバが起動しますので、http://localhost:8080/にアクセスするとドキュメントを確認できます。
Goの標準書式
Goではソースコードを標準書式に書き換えるツールが用意されています。
本ツールを用いることで書式を統一することができます。
gofmt hello.go
成形した書式で上書きする場合は「-w」オプションを指定します。
gofmt -w hello.go
コンパイル
ソースコードを実行確認する場合には以下のコマンドを実行します。
$ go run hello.go
バイナリファイルを生成する場合には以下のコマンドを実行します。
$ go build hello.go
プロジェクトの作成
Go言語では、複数のファイル・パッケージを扱うためのプロジェクト構成について指針が示されています。
ディレクトリ構成
プロジェクト名のディレクトリを以下のように作成します。
パッケージ毎にディレクトリを作成します。
└─project01
├─bin
├─pkg
└─src
├─main
│ main.go
│
└─testpkg
testpkg.go
ディレクトリ名 | 意味・役割 |
---|---|
bin | コンパイルで生成されたバイナリファイル格納先 |
pkg | 依存パッケージのオブジェクトファイル格納先 |
src | ソースコードの格納先 |
GOPATH環境変数
projectディレクトリのパスをGOPATHという環境変数に指定します。
GOPATH環境変数を起点にしてビルドや設定が自動化されます。
(linuxの場合)
$ export GOPATH=/tmp/project01
(windowsの場合)
> set GOPATH=c:\project01
ビルド
go installコマンドを用いてプロジェクトをビルドします。
ビルドする時には「main.go」が存在するディレクトリに移動する必要があります。
$ cd $GOPATH/src/main
$ go install
生成されたファイルが$GOPATH/binに自動的に格納されます。
└─project01
├─bin
│ main.exe
│
├─pkg
│ └─windows_amd64
│ testpkg.a
│
└─src
├─main
│ main.go
│
└─testpkg
testpkg.go
関連ページ
- Go言語_プログラムの作成
- Go言語_コマンドライン引数
- Go言語_変数と型
- Go言語_コンポジット型
- Go言語_制御構文
- Go言語_関数
- Go言語_演算子
- Go言語_メソッド
- Go言語_インターフェース