Go
golang

Tour of Go (Go言語基礎文法最速マスター)日本語版を更新しました #golang

More than 3 years have passed since last update.

Go Advent Calendar 2015 その3 2日目です。

今年は3つも並行してAdvent Calendarが走っていてすごいですね。

その3も頑張っていきましょう!

gopher.png


Tour of Go 日本語版を更新しました

さて、昨今翻訳についていろいろとありますが、それはさておきTour of Go 日本語版を更新しました。

主な更新内容は以下のとおりです:


  • 翻訳を見直し、わかりにくい表現の日本語を修正

  • 2014,2015年に行われた更新を取り込み。これに伴い、以下のページが増えています:


    • Zero values

    • Type conversions

    • Type inference

    • Defer

    • Arrays

    • Stringers

    • Exercise: Stringers

    • Readers

    • Exercise: Readers



はてブ等で途中のページをブックマークして頂いていた方がいらっしゃいましたが、ページが変わってしまいました。ご了承ください。

以前は code.google.com/p/go-tour-jp で管理していましたが、サイトの閉鎖に伴い、githubへ移行 (github.com/atotto/go-tour-jp) しました。

翻訳に関する修正は、このgithubでPull Requestを受け付けますので、なにかあればお願いします。なお、本体 (https://github.com/golang/tour) に関する修正依頼は、golang本体と同様、codereviewでの受付ですので、そちらへお願いします。


アプリをGoogle App Engineへ継続的デプロイする

おまけ。

Go TourはGoogle App Engine(GAE)のWebアプリです。もちろんGoで書かれています。このアプリをGAEへデプロイするために、 drone.io を使っています。

いまのフローはこんな感じです:

image

Pull Requestをjpブランチへマージした後、drone.ioが自動的にGAEへデプロイする流れです。

drone.ioの設定はこちらです: https://drone.io/github.com/atotto/go-tour-jp/admin

抜粋:

# for appengine

cat /usr/local/go/google_appengine/VERSION
pushd ~/
curl -s -o go_appengine_sdk.zip https://commondatastorage.googleapis.com/appengine-sdks/featured/go_appengine_sdk_linux_amd64-${appengine_version}.zip
unzip -q go_appengine_sdk.zip -d /usr/local/go/google_appengine
cat /usr/local/go/google_appengine/go_appengine/VERSION
popd

# for go-tour
go get -u golang.org/x/tools/playground

# deploy
/usr/local/go/google_appengine/go_appengine/appcfg.py --oauth2_refresh_token=${refresh_token} update -A go-tour-jp .

drone.ioの設定にある環境変数で appengine_versionrefresh_token を渡しています。

appengine_version は、現在の最新 1.9.30 を入れています。

refresh_token の取得方法などはこちらの記事が参考になると思います: http://qiita.com/kyokomi/items/84af37e9774faf9072ed

Circle CIも使ってみましたが、deployだけを走らせるのには少しオーバースペックでした。スクリプトを直接書いて動かすことはできています: https://circleci.com/gh/atotto/go-tour-jp/22

翻訳のリポジトリである都合上、travis.ymlやcircle.ymlを置きたくなかったので、直接スクリプトを書くようにしています。


さいごに

2011年にTour of Goの日本語版を公開し、その後の Google Developper Day 2011 でAndrewさんに http://go-tour-jp.appspot.com/ を紹介してもらったのは良い思い出です。videoはここ

Tour of Goのリニューアルから長いこと(注1)間が空いてしまい、いろいろと不都合をお掛けしましたが、今後ともよろしくお願いします。

それではTour of Go 日本語版をお楽しみください!


注1: https://twitter.com/atotto/status/541232181985542144 リニューアルはちょうど一年前でしたすみません。。

before:

go-tour_old.png

after:

go-tour_new.png