Go言語のRest API開発 - ①環境構築
普段は、Kotlinを使ってRest API、MVCアプリケーションの開発をしているバックエンドエンジニアです。
最近バックエンド開発で、別の言語を取り入れてみようという気概で、Go言語を導入してみたので、その間に培った経験をアウトプットします。
第1回は、環境構築編ということで、Goの基礎からアプリの実行までやっていきます。
Go言語とは
Googleが開発したプログラミング言語。
C言語をならった処理の速さと、構文がシンプルであることが特徴。
主にWebアプリケーションの開発に向いているとされています。
環境構築
Goのインストール
以下の公式サイトからインストーラをダウンロードし、手順に従ってgoをインストールします。
環境変数(パス)の設定も自動で行われます。
Goは後方互換性があるので、最新バージョンもしくはLTSバージョンのインストールで問題ありません。
インストールが完了したら、おなじみのバージョンコマンドでパスが通っているか確認します。
$ go version
go version go1.22.2 windows/amd64
VSCodeの設定
開発エディタは、VSCodeで開発できます。cursor等のAIエディタでも可。
VSCodeのインストールは割愛します。
Go拡張機能のインストール
VSCodeの拡張機能で、以下のGo公式プラグインをインストールします。
Goアプリの作成
Goモジュールの初期化
適当なフォルダをモジュールフォルダとして(ここでは「sample-go-app」)、そのフォルダ上で「go mod init <任意のモジュール名>」コマンドを実行する。
これにより、go.modファイルが作成され、ここに依存関係等が保存される。
$ mkdir sample-go-app
$ cd sample-go-app
$ go mod init sample-go-app
Goファイルの作成
同じフォルダ上に、「main.go」ファイルを作成します。
中身は一旦以下のような感じで。
「fmt」とは、Goの標準パッケージで、fmt→「Tab」キーの入力で自動インポートされる。
package main
import "fmt"
func main() {
fmt.Println("Hello World!")
}
ビルド・実行
Goアプリの実行方法は、主に以下の2種類。
go run
コンパイルと実行を同時に行うイメージ。
コンパイルファイルは一時ファイルなので、実行ファイルは作成されない。主にテスト用。
$ go run main.go
Hello World!
go build
コンパイルを行い、実行ファイルを作成する。
実行ファイルの形式はビルド環境(Windows, MacOS, Linux...)に依存する。(もしくは環境変数をいじることで変更できる)
実行ファイルを作成し、それを実行することでアプリが動作する。
$ go build main.go
(Windowsではexeファイルが作成される)
$ ./main.exe
Hello World!
次回予告
次回からさっそくRest APIの開発に移っていきます。
↓↓↓第2回↓↓↓
参考
Go(公式)
Go公式 VSCodeプラグイン
Discussion