😎

golang 開発環境構築【コマンドとか】

2022/08/11に公開

目的

忘備録としてコマンドとかをまとめてみた。完全に個人用な気がする...

動作環境

  • OS:Ubuntu 22.04 amd64(VPS)
  • Go:1.19 linux/amd64

構築手順

  1. 開発する場所である(ルート)ディレクトリの作成
bash
$ mkdir <ディレクトリ名>
$ cd ./<ディレクトリ名>
  1. Go Modulesというパッケージ管理システムを使ってプロジェクトを作成
bash
$ go mod init <モジュール名>

これを実行するとgo.modが作成される。ディレクトリ構造はこんな感じにするらしい。

<ルートディレクトリ>/
	┣ <サブディレクトリ>/
	┃	┗ sub.go
	┣ main.go
	┗ go.mod
  1. 必要なモジュールをインストールする
    モジュールをインストールするには3つのパターンがあるらしい。
  • go.sumに追加する場合(go.modを作成したプロジェクトのみで使用する場合)
bash
$ go get <URL>
  • $GOPATH/binに追加する場合(どのプロジェクトでも使用する場合)
bash
$ go install <URL>
  • コード内でimportしているのに上記2つを実行していない場合、あるいはダウンロードされているのにimportされていない場合
bash
$ go mod tidy

実行方法

Goでコードを実行するには以下のような形でできる。基本的にはbuildを用いてファイルを実行することが多いらしい。また、buildでファイル名とかを指定せずに、ルートディレクトリで実行すると、すべてをコンパイルしてくれる

bash
$ #直接実行する場合
$ go run <実行したいファイル名>.go
$ #実行ファイルを作成する場合
$ go build <ファイル名>.go

便利なコマンドたち

  1. コードフォーマッター
    Goには標準でコードを整形してくれるコマンドが存在する。ディレクトリを指定することで、そのディレクトリ配下のGoファイルすべて、チェックし整形する必要がある場合はファイルを書き換えてくれる。
bash
$ go fmt <ディレクトリ名あるいはファイル名>
  1. 解析ツール
    こちらもGoの標準機能として用意されていてるものである。バグが起きそうなところを警告・注意してくれます。コードフォーマッターと同様にディレクトリやファイル名指定することができる。
bash
$ go vet <ディレクトリ名>
$ go vet <ファイル名>

Discussion