運営者情報

運営してるひと: @sters9

       

妻と猫と横浜あたりに住んでいる。最近は Go や Kubernetes や GCP をしています。 PHP や JavaScript もすこし。

プライバシーポリシー

tools.gomiba.co

アーカイブ

2021/02 (12) 2021/01 (8)

2020/05 (2) 2020/04 (2) 2020/02 (2) 2020/01 (1)

2019/12 (3) 2019/11 (2) 2019/10 (5) 2019/09 (3) 2019/07 (6) 2019/06 (4) 2019/04 (3) 2019/01 (2)

2018/12 (6) 2018/10 (4) 2018/09 (6) 2018/08 (7) 2018/07 (16) 2018/06 (7) 2018/05 (7) 2018/04 (5) 2018/03 (3) 2018/02 (10) 2018/01 (6)

2017/12 (8) 2017/11 (6) 2017/10 (10) 2017/09 (12) 2017/08 (12) 2017/07 (3) 2017/06 (1) 2017/01 (4)

2016/12 (5) 2016/10 (3) 2016/09 (1) 2016/07 (2) 2016/06 (1) 2016/04 (1) 2016/02 (1) 2016/01 (2)

2015/12 (1) 2015/10 (1) 2015/09 (3) 2015/06 (1) 2015/01 (1)

2014/08 (2) 2014/07 (3) 2014/05 (1) 2014/01 (7)

2013/12 (2) 2013/11 (4) 2013/10 (1) 2013/09 (1) 2013/08 (3) 2013/07 (4) 2013/06 (5) 2013/05 (2) 2013/04 (7) 2013/03 (1)

Go 言語に入門する

この記事は公開されてから1年以上経過しており、情報が古くなっている可能性があります。

やるかやるか〜〜〜って思ってたけど、やっとやった。

A Tour of Go をやってみる

Go 言語の入門するにはとりあえず A Tour of Go をやると良いって噂を聞いたのでやってみる。

A Tour of Go

ブラウザ上で Go 言語のプログラムを書いて、そのまま実行できるスゴイやつ。 課題も途中で出てくるので、実際に動かしながら各種の理解を進められる。

とりあえずやってみての感想は interface と struct そして ポインタが絡むとよくわからんとなった。 もっとコード書いたらわかってくると思うので一旦雰囲気を理解するだけで。

あと標準パッケージがワカラン。このへんもやっていくしかない。

ただなんとなく、超便利有能関数群みたいなのが無いあたり、俺達のプログラムに必要なコードは俺達で組むんだ、みたいな意思を勝手に感じた。 パッケージは Github から直に入るのでどういうのがよく使われているのかまったくわかんない… awesome-go を見るのがとりあえずは良いかもしれない。

avelino/awesome-go: A curated list of awesome Go frameworks libraries and software

Go 言語のランタイムを入れる

Downloads - The Go Programming Language

Mac なら brew install go で入る。

GOPATH は設定してもしなくても良くて、設定しないと ~/go/ になる。特に移動する必要も感じなかったのでそのまま。 GOROOT は設定必要だよ!とか書いてある記事もあるが、現在に置いては不要らしい。

ghq をいれる

motemen/ghq: Remote repository management made easy

~/.gitconfig に ghq の設定を追記する。


[ghq]
root = $GOPATH/src/

ざっくり説明すると、リポジトリの管理をお手軽簡単にやるツール。

Go 言語のリポジトリをこねくりまわすとき GOPATH/src 以下で作業をする必要があるので、これを使って GOPATH/src に配置されるようにしておくと困らなくて良い。 (git clone して作業しようとしたら GOPATH/src におくんやで!みたいなエラーが出てちょっと困った)

Visual Studio Code を入れる

Visual Studio Code - Code Editing. Redefined

エディタ atom でも良かったんだけど、せっかくなので別のやつを試してみる。 個人でポチポチやってみるのに Gogland ほどのウルトラハイパフォーマンス IDE は一旦いらないんじゃなかろうかという気持ち。

拡張機能はとりあえずこの2つを。

  • Go
    • Go 言語サポートを追加する
  • Dracula Official
    • おすすめテーマ

Go を入れるだけで、裏で go ほげほげなコマンドを使った定義元ジャンプや整形や lint やデバッグまで色々多数用意される。 初めて Go を入れたときに必要な Go パッケージが go get されているかを自動で確認してくれて、無い場合はよろしくやってくれる。

GOPATH 以下が見れる GOLANG というタブ?がエクスプローラーの中に出ているので、ここからこのまま作業をしてもいいし、ディレクトリを開いて置いても良いと思う。

ディレクトリを開いたほうがターミナル起動時に、カレントディレクトリに移動してからやってくれるので便利。 GOPATH のもので見ると GOPATH を最初に開くので移動する手間あり。


とりあえずはこんなとこで。