今日はGolangをやった #30
今日やったこと
Golangに入門した。
はじめてやってみました。(以前サークルでちょっとやったけどほとんど忘れてしまった。)
もしも将来Golang書ける人になったときに初心を振り返りたいので、思ったこと等箇条書きでメモする。
ちなみにやっているのは日本語版A Tour of Go。
go tool tour
で自分の端末上でtourをできるとあるが、brewから入れたGoには入ってなかった。やりたい場合はgo get golang.org/x/tour/gotour
らしい。(公式にも書いてたのでおそらく入ってないのが普通なんでしょう。とりあえず僕はWeb上の実行環境で続けることにした)- Golangでは大文字から始まるメソッドがpublicなメソッドとして扱われる。
- 変数の宣言は型がうしろ。
きもちわるい - 複数の返り値を持てる。素敵。
- 関数宣言のときに
func hoge(引数)(x, y int){...}
とやると返り値に名前を付けられるらしいが、何に便利なのか僕にはわからない。 - 変数宣言は
var
らしい。JavaScriptのせいでvar
って書くのが気持ち悪い。 - 変数宣言時に初期値を与えるとその型になるので型指定は不要…こういうの便利に見せて地雷ってやつでは…?
- bool型に初期値を与えないと
false
。これって他の言語どうだったかなぁなんて思った。 while
はない。コレは知ってた。- 無限ループのときは
for {...}
でいける。;;
とか書かなくていい。(そんなに無限ループ使わないけど) - if文の条件式の前に短いstatementを置ける。これワンライナーとかするときに悪用できそう()
- Switch with no condition、これ感動した。こんな書き方もあるのか。
defer
って何に使うのこれ。- 配列の宣言は
[10]string
とか。var [10]stirng
とか或いはarray := [3]string{"hoge", "fuga", "piyo"}
。配列の作り方っていつも忘れる。 - sliceってのがある。a[1:5]とやるとaという配列の1から (5-1)番目 の要素までが返る。これは忘れてるとsハマりそう…。
今日はとりあえずsliceまで。
雑談
完全に私事ですが、6月末からとある会社でプログラマーとして働かせていただけることになりました。(アルバイトです)
圧倒的成長にご期待下さい!