16
11

More than 1 year has passed since last update.

VSCodeでGo言語の開発環境を構築

Posted at

はじめに

船井総研デジタルのoswです。業務でGo言語を使うことになったため、勉強がてら備忘録で記録します。参考になる方がいらっしゃれば幸いです。

対象読者

  • Go言語をこれから勉強する方
  • VSCodeを使おうと考えている

今回使う環境

今回は下記を土台にGoの開発環境を構築します。

  • Windows 11 Home / 22H2
  • VSCode / 1.72.2

環境構築

環境構築はGitのインストールを除き、マイクロソフトの下記記事を参考に次の流れで行います。

  1. Gitのインストール
  2. Goのインストール
  3. VSCodeのインストール
  4. 拡張機能のインストール
  5. Goツールを更新する

Gitのインストール

内部でGitを使うことがあるようで、必ずGitが必要という訳ではないようですがインストールすることが推奨されているようです。

Goのインストール

下記、Go公式ページから「Download Go for Windows」を選択し、ダウンロード、インストールします。

次に Windowsキー + R -> cmd[Enter] でコマンドプロンプトを起動し、次のコマンドでGoがインストールされたか確認します。レスポンスでバージョンが返れば成功です。

インストールの確認
>go version
go version go1.19.2 windows/amd64

VSCodeのインストール

手元にまだインストールされていない方は次の記事を参考にインストールしてください。

拡張機能のインストール

VSCodeを日本語化する

インストールしたばかりのVSCodeはUIが日本語ではないため、日本語化する場合は下記画像のように「japanese」で検索し、言語パックをインストールし、VSCodeを再起動します。
VSCodeの日本語化.png

Goの拡張機能をインストール

「Go」で拡張機能を検索し、画像と同じものをインストールします。
Go拡張機能のインストール.png

Goツールを更新する

Goの拡張機能をインストール後、Ctrl + Shift + P でコマンドパレットを開き、Go: Install/Update toolsを検索、実行します。
Goツール更新コマンド.png

次に表示されるリストをすべて選択し、「OK」を押下します。
Goツール更新リスト.png

これで環境構築は完了です。

Hello World

構築した環境でお馴染みのHello Worldを実行してみます。

今後、学習した内容ごとにディレクトリをぶら下げていきたいので、下記のようにgoディレクトリを作成し、その中に各ディレクトリをぶら下げるようにしました。VSCodeで「hello」ディレクトリを開きます。

フォルダ階層
go
└─hello
  └─hello.go

VSCode上でターミナル(コマンドプロンプト)を起動、カレントディレクトリがhelloであることを確認し、下記を実行します。

プロジェクトを初期化
>go mod init hello

# go.modが作成される。VSCodeでデバッガーを使うためにもこの作業が必要な様子
>ls
go.mod

hello.goを次のように作成します。

hello.go
package main

import "fmt"

func main() {
	name := "World"
	fmt.Println("Hello", name)
}

VSCode上で[F5]キー押下でデバッグが走り、下記のように「Hello World」と結果が表示されます。

実行結果
Starting: C:\Users\<ユーザ名>\go\bin\dlv.exe dap --check-go-version=false --listen=127.0.0.1:58443 from r:\work\go\hello
DAP server listening at: 127.0.0.1:58443
Type 'dlv help' for list of commands.
Hello World
Process 18416 has exited with status 0
Detaching
dlv dap (17676) exited with code: 0

ここでgo.modが作成されていないとエラーになります。

エラー
Starting: C:\Users\<ユーザ名>\go\bin\dlv.exe dap --check-go-version=false --listen=127.0.0.1:58752 from r:\work\go\hello
DAP server listening at: 127.0.0.1:58752
Build Error: go build -o r:\work\go\hello\__debug_bin.exe -gcflags all=-N -l .
go: go.mod file not found in current directory or any parent directory; see 'go help modules' (exit status 1)

コマンドでコンパイル、実行するにはカレントディレクトリがhelloであることを確認し、下記のようにします。

手動でコンパイル、実行
# runコマンドを使う場合
>go run hello.go
Hello World

# buildコマンドを使う場合
>go build hello.go
>hello.exe
Hello World

run / build と2つコマンドを使いましたが、どうやら実行ファイルが作成されるかどうかが異なるようです。

コマンド 実行ファイルの作成
run しない
build する

おわりに

複雑な手順もなく、これでGoの開発環境が整いました。これから勉強を開始します。

16
11
1

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
16
11