
Go言語ってご存じですか?Googleで開発されたプログラミング言語です。
C/C++とかJavaみたいにコンパイルしてプログラムを作る静的型付け言語です。
Go言語は使いづらいという意見を聞きます。メリットとデメリットを教えて頂けますか?


メリット:コンパイルで実行コード生成。セキュアメモリ(ポインタ使えない)。並列処理(goroutine)が標準で使える。
デメリット:genericsがない。継承がない。
なるほど。柔軟さを排除することで安全性を高めているんですね。
過去のプログラミング言語の失敗事例が活かされてると理解しました。


習うより慣れよということで、まずはインストールとHello Worldをやってみましょう。
環境
Windows10 Home(64bit)1903
Go 1.14.4
この記事で解決できること
- Go言語の概要を知ることが出来る。
インストール
①ダウンロードページに行く。
②インストーラをダウンロード
私はWindows10なので、赤枠をクリックしました。
③インストールを実行
インストーラをダブルクリックし「OK」「Next」「Install」「Finish」をデフォルトフォーカスのままクリックしていけばインストール完了です。※使用許諾もONになってますし、環境変数設定も自動でした。
④インストールが成功したことの確認
Winキー+R → cmdと入力してリターン コマンドプロンプトの表示
go versionと打ち込みリターン。go version go1.14.4 windows/amd64みたいに表示されればOK。
【参考】自動で追加された環境変数
ユーザ環境変数
Path:%USERPROFILE%\go\bin
GOPATH:%USERPROFILE%\go
ChocolateyLastPathUpdate:18桁の数字
システム環境変数
Path:C:\Go\bin
ChocolateyInstall:C:\ProgramData\chocolatey
Hello Worlld
①ファイルを新規作成
C:\temp\HelloWorld.go
②プログラムを書く
1 2 3 4 5 6 7 |
package main import "fmt" func main(){ fmt.Println("HelloWorld!") } |
③コンパイルする
command
> go build HelloWorld.go
コンパイルが成功するとHelloWorld.exeが生成されます。
④実行する
command
> HelloWorld.exe
HelloWorld!
HelloWorldが表示されました。
【参考】
goでビルドしたEXEはデカイです。ランタイムライブラリを静的にリンクしているようです。
これも堅牢性を高める仕組みの1つですね。(従来、ランタイムライブラリが複数バージョンインストールされていて古いバージョンが参照される不具合が多発した時代があります)
おまけ
①オンラインでGo言語を試すことができる(The Go Playground)
WEB画面にプログラムを打ち込んで「Run」を押せば簡単に実行できます。
②GoのマスコットキャラクターGopher
Goのホームページに行くとGopherくんが色々なところに出現してるので探してみてください。
まとめ
Go言語の概要に触れてみました。次回はスレッド(goroutine)を試してみます。
techgym
Python、AI、Railsなどの最新技術を学びたいのだけど、コロナウイルスの影響でスクールに入れないという方にお勧め。
オンラインサポートを受けられるので、自分のペースで学習が進められます。
GEEK JOB
コロナウイルスで仕事が無くなった…という20代の方に是非おすすめしたい。
エンジニアになるための講座を無料で受けることができ、就職まで面倒見てくれます。