自分用Golang勉強メモ
ゴール
とりあえず、インストールからHello World
を出してみる
環境
- OS: Windows 10 Home (64bit)
- エディタ: 適当なテキストエディタ
インストールしてみる
- 公式WEBに"Download Go"のリンクがあるので、クリックする。
- 自分のマシンに合わせたバージョンをダウンロードする。(go1.7.5のインストーラ版にした)
- 適当にインストールを進める。(インストーラ版だと、デフォルトでC:\直下に入る)
Goのバージョンを確認してみる
ターミナルで以下を打ってみる。
> go version
go version go1.7.5 windows/amd64
インストーラを使えば、自動的にインストールフォルダにpathが通るハズ。
もし通ってなかったら自分で設定する。
GOROOT: "C:\Go"
「Hello World」を出力してみる
お約束。
以下のソースを用意する。
package main
import "fmt"
func main() {
fmt.Println("hello, world")
}
ビルドする。
とりあえずターミナル上げて、ソースのあるディレクトリまで移動。
> go build Hello_World.go
うん。エラーが出た。
GOHOMEのパスが通ってないよ。とのこと。
とりあえずソースのあるディレクトリにGOHOMEのパスを通して再度実行。
今度はOKみたい。
ソースディレクトリを見てみると、Hello_World.exe
の実行ファイルが出来ている。
では早速実行してみる。
> Hello_World
hello, world
ちなみに以下のコマンドで実行すると、実行ファイルを作成せずに実行出来るらしい。
> go run Hello_World.go
hello, world
もうちょっと何かやってみる
せっかくなのでもう少し触ってみよう。
なんか凄く流行ってたので、便乗してみる。
Goのフレンズは既にいるけど、、、
元ネタ: わーい、すごーい
package main
import "fmt"
type Friends struct {
skill string
}
func newFriends(skill string) *Friends {
friends := new(Friends)
friends.skill = skill
return friends
}
func (f Friends) wai() string {
return "わーい\n"
}
func (f Friends) sugoi() string {
return "すごーい\n"
}
func (f Friends) tanoshii() string {
return "たのしー\n"
}
func (f Friends) beFriend() string {
return f.wai() + f.sugoi() + f.tanoshii() + "君は" + f.skill + "がとくいな、フレンズなんだね!!" + "\n"
}
func main() {
var friends *Friends = newFriends("クソリプ")
fmt.Println(friends.beFriend())
}
実行する。
> go run waisugoi.go
わーい
すごーい
たのしー
君はクソリプがとくいな、フレンズなんだね!!
まとめ
動くところまではもっていけたが、構造体と関数の紐づけもよくわからないまま。
とりあえず公式のドキュメント眺めながら、基本的な文法等を勉強する必要がありそう。
せっかくIntelliJが入っているので、次はgolangプラグイン入れて使ってみる。