# WindowsにGoをインストールしてHello Worldしてみる

Table of Contents

インストール Go

Download and installのページに行き、環境に適したものをインストールする。

インストールするとシステムが立ち上げるので、手順に沿って進めていく。

Finish後、Goがインストールされていることを確認する。

コマンドを開き、go versionを叩くとgo version go1.21.1 windows/amd64と表示された。

これでインストールされていることを確認できた。

Hello World

次にHelloWordを表示させる。

まずは任意の場所に適当なフォルダを作成する。

mkdir HelloWorldGo
cd HelloWorldGo

モジュールを作成する

次に、

go mod init example/hello

上記コマンドでモジュールの作成を行うのだが、

'go' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。

というエラーが出た。

Pathを調べてみるとしっかりと通っている。 ということで再起動をする。

再起動で、

go mod init example/hello
go: creating new go.mod: module example/hello

無事に叩けるようになった。

上記コマンドで作成されたのは、go.modというファイルで、

module example/hello
go 1.21.1

という記載がある。

調べてみるとこれは、依存関係のバージョン管理をするものらしい。 つまり、スクリプトを記述しないJavaScriptpackage.jsonみたいなものらしい。

疑問点が解消されたので、次に行く。

Mainパッケージの作成

hello.goファイルを作成し、

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

をと記述する。

go run .

上記コマンドを叩けば、

Hello, World!

Goエンジニアのスタートラインに立てた。

外部パッケージの呼び出し

外部パッケージのコードを呼び出してみる。

まずはhttps://pkg.go.dev/でパッケージを検索する。 今回はチュートリアルに沿って、https://pkg.go.dev/rsc.io/quote/v4というパッケージを使用することにする。

次にhello.goの内容を変更する。

package main
import "fmt"
import "rsc.io/quote"
func main() {
fmt.Println(quote.Go())
}

"rsc.io/quote"importして"rsc.io/quote"のパッケージを使用するできるようにした。

次にルートにgo.sumファイルを作成する。

このファイルではgo.modで定義したプロジェクトのモジュール構成と依存関係のバージョン管理に使用するらしい。

次にgo mod tidyコマンドを実行する。

このコマンドは

  • 実際に使われていない依存関係を削除
  • importした依存関係をインストール
  • つまり、プロジェクトの依存関係を最新化できる

上記の通りの動きをする。

>go mod tidy
go: finding module for package rsc.io/quote
go: found rsc.io/quote in rsc.io/quote v1.5.2

実行すると上記のように依存関係がインストールされた。

最後に実行してみる。

go run .
Don't communicate by sharing memory, share memory by communicating.

という風によくわからない文章が出力された。

Githubを見ると、そういう風に返すようにできているので、正しく動いている。

My avatar

Thanks for reading my blog post! Feel free to check out my other posts or contact me via the social links in the footer.


More Posts

Comments