2
1

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 5 years have passed since last update.

Go開発環境構築(Mac)

2
Posted at

Go開発環境構築(Mac)

環境情報

情報
OS macOS High Sierra 10.13.6
Homebrew 2.4.8
Go 1.14.5 darwin/amd64

目次

  1. Golangのインストール
  2. GOPATHの設定
  3. 開発支援ツール

Golangのインストール

Go公式のインストーラ でも出来ますが、Macなのでパッケージ管理のHomebrewを使ってインストールしていきます。

① インストール & 確認

$ brew install go
$ go version
go version go1.14.5 darwin/amd64

GOPATHの設定

外部パッケージのリソースなどが保存されるPATH情報。 実行バイナリもGOPATH内に配置されるため、PATHを通しておく。

① 現在のGOPATHを確認する。標準では$HOME/goが設定されている。

$ go env GOPATH

② GOPATHの向き先を再設定する。ターミナルでexportを実行するだけだと、ターミナルを再起動した場合に設定した値が消えてしまうため、~/.bashrcに記載し、起動時に毎回実行されるように設定。

.bashrc
# 以下を追記する
export GOPATH=$(go env GOPATH)
export PATH=$PATH:$GOPATH:bin

.bashrcを読み込む。(ターミナル再起動でもOK)

$ source ~/.bashrc

開発支援用ツール

Goが標準で提供している機能はgo helpで確認可能。
標準での提供はしていないが、公式に開発されている有用なコマンドラインツールがあるため、必用に応じてインストールする。

gofmt

コードフォーマッターのコマンド。インデントや改行位置などを自動調整する。

type Todo struct {
  ID uint64 `json:"id"`
  Title string `json:"title"`
  Finished *bool `json:"finished,default:18"`
  CreatedAt time.Time `json:"created_at"`
}

type Todo struct {
  ID        uint64    `json:"id"`
  Title     string    `json:"title"`
  Finished  *bool     `json:"finished,default:18"`
  CreatedAt time.Time `json:"created_at"`
}

goimports

gofmtの上位互換のようなツール。コードフォーマッターの機能とプラスしてパッケージを読み込むimport文の挿入と削除を自動的に行う。

※ Goは使用されていないパッケージがimport宣言されている場合にコンパイルエラーになる

go vet

バグの原因となりそうなコードを検出するコマンド。

$ go vet main.go
$ go vet .
$ go vet ./...

golint

Goらしくないコーディングスタイルに対して警告をするコマンド。

$ golint ./...
$ golint -set_exit_status ./...

-set_exit_statusを指定することで、警告が出た場合にコマンドをエラー終了する。CIの実行などはこのオプションを指定するとよい。

go doc(godoc)

ドキュメント閲覧用のコマンド。godocの方がブラウザで確認できるため、ドキュメントが見やすい。
go doc・・・対象のパッケージのドキュメントが標準出力される。
godoc・・・GOMODに設定されている.modファイルをもとに、パッケージのドキュメントがブラウザで確認可能。

$ go doc -all fmt
$ godoc

参考

改訂2版 みんなのGo言語

2
1
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
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?