LoginSignup
5
4

ゼロから始めるGolang①

Posted at

はじめに

本記事について
初めまして!Golangを学び始めましたので,備忘録&みなさまの導入の助けになればと思い記事にします.#Qiita初投稿なので,お手柔らかに

  1. (本記事)開発環境の設定
  2. (予定)基本的な知識
  3. (予定)簡単なWeb開発

の順で書いていくつもりです.

Golangとは

image.png
可愛いマスコットキャラGopherくんで有名ですね.
特徴はこの絵にもあるとおり,

  • シンプルで親しみやすい
  • 処理速度が速い
  • 効率的にメモリの管理ができる
  • 並列処理が可能

などなど,大規模な開発であったり,チーム開発に向いた特徴を持っています.

Goの開発環境を作る

この記事ではGo言語が実行できる環境を整え,"Hello World!"が出力できるところまで進めていきます.

開発環境

  • Mac OS 13.2.1
  • VSCode 1.81.1
  • Homebrew 4.1.6

Homebrewのインストールはこちら
VSCodeのインストールはこちら

Goのインストール

まずはGoのインストールとその確認をしましょう.
ターミナルから

$ brew install go
$ go version
go version go1.21.0 darwin/arm64

のように出力されればOK.

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

次にVSCodeでGoの拡張機能をインストールします.
VSCodeの拡張機能のページからgoと検索します.
スクリーンショット 2023-09-06 12.57.09.png

  • Go(優秀なサポート)
  • Go Nightly
  • Go Test Explorer(テスト機能の強化)
  • Go Outliner(アウトラインの強化)

あたりをインストールしておくと良いです.他にもおすすめが紹介されているので拡張機能10選を参照ください.

依存パッケージをインストール

拡張機能が依存するパッケージもインストールしましょう.
VSCodeのコマンドパレット(Command + Shift + P)からGO: Install/Update toolsと検索します.
選択すると,
スクリーンショット 2023-09-06 13.05.50.png
のようにたくさん出るので全選択してインストールします.スクリーンショット 2023-09-06 13.07.06.png
と出れば完了です.

プロジェクトを作成

では"Hello World!"を出力するためのプロジェクトを作りましょう.GO1.16以降Go-Moduleモードがデフォルトで追加されるようになり,GOPATH配下に/src/...とプロジェクトを作るという制約はなくなったそうです.詳細はこちら

ですので,好きな場所で

$ mkdir go-learning
$ cd go-learning

としてフォルダを作成しましょう.
このgo-learningをモジュールにするためにある宣言をします.

$ go mod init <モジュール名>

<モジュール名>はgithubに公開する際はgithub.com/githubのユーザ名/モジュール名とし,公開しない場合は好きなモジュール名をつけます.基本はフォルダと同じ名前にしておくのが良さそうです.

次に実行ファイルを作成します.作成したフォルダ内にmain.goファイルを作成します.ファイルの中身は,

main.go
package main

import (
	"fmt"
)

func main() {
	fmt.Println("Hello World!")
}

fmtは標準パッケージで,入出力の処理などが行えます.
では実行しましょう.
ターミナルから,

$ go run main.go
Hello World!

出来ましたか?
目標の通り,"Hello World!"の出力まで行えたので本記事はここまでとします.

最後に

今日はGoの実行環境を作成しました.package?import?mod?などわからないことが出たままではあるので,次回はその辺りも調べてまとめようと思います.ありがとうございました.

参考記事
Goのプロジェクトの基本
VSCodeでGo言語の開発環境を構築する
少しずつ育てるGo言語のプロジェクト構成

5
4
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
5
4