少し高度な自動化/テストツールの開発や、簡単にRESTサーバの開発に利用できないか、と思って、Goを少し学び始めました。
Goを学び始めるときに、自分なりに役に立ったサイトをまとめておきます。
#公式サイト/日本語訳サイト
- Goの本家サイト。Go自体のダウンロードなどはこちらから。
- 公式サイトの日本語訳のサイト。
- 公式サイトのドキュメント(https://golang.org/doc/) の日本語訳。golang-jp では翻訳されていないものを参照するときに便利。
#リファレンス
- GoらしいプログラミングをするためのTips集。
- 日本語訳は、こちらを参照すると良い。
- Goで書かれたコードをレビューする際のガイドライン。"not a style guide" とあるけど、コーディング規約としても必要な内容が書かれている。
#環境構築
##Goのインストール/環境変数定義
##IDE
クロスプラットフォームで開発できることを前提とすると、IntelliJ、Eclipse、LiteIDEあたりが候補になると思います。
(普段、Atomとかのテキストエディタを利用している人は、そちらを使っても良いと思います)
###IntelliJ IDEA + golang plugin
最初、IntelliJで開発環境を構築しようと思っていましたが、プラグインのインストール時は注意。IntelliJ 14 だと、"Preferences->plugins" でインストールしたものでは正常に動作せず、さらに、go-lang-idea-plugin のサイトから最新版(2015/03/20時点で 1.0.0.alpha)を取得すれば良いのかなと思ったら、0.9.16-alpha.9 にしないと動作しませんでした。他のバージョンでは Go SDK の指定ができなくて、ビルドができなかった...
ただ、実際に開発をしてみて、現在のところは IntelliJでは、Goのデバッグをするのが手間であり、あまり良くないかも、と私自身は感じています。スクリプト毎にビルドの設定をする必要があるようで、それが面倒ですね。ということで、今のところは、Eclipseでgoclipseを使っています。
###Eclipse + GoClipse
- 2015/03/20時点では、Eclipse Marketplaceで配布されているバージョンが古いようなので、以下のUpdateSiteから、最新版をインストール。
- http://goclipse.github.io/releases/
###LiteIDE
軽量なGo専用のIDE。最初からデバッグもできるようになっているので(他のIDEだと、GDBなどを手動でインストールする必要がある。LiteIDEでも多少は設定などが必要だけど、他よりもハマりにくい)、普段利用しているIDEにこだわらないなら、LiteIDEは良いと思います。
#チュートリアル
- Step by Step 的に学べる、公式サイトの学習ページ。
- 基本的な内容を網羅できる。画面上でGoスクリプトを書いて、実行できるのも良い。
- Goを利用した実装例が豊富に示されている。各サンプルのページで、ソースコードの右上の Go Gopher のアイコンからページを辿ると、こちらでも、Goスクリプトをその場で変更して、実行することが可能になる。
- GitHubのページは以下。
https://github.com/mmcgrana/gobyexample
- 基本的な文法などが分かる。
#その他の参考
##Goでのテスト
- testing パッケージの説明。
- Goでのテストのやり方を、一通り説明してくれており、分かりやすいです。
##Tips
##Advent Calendar