...

ドキュメント

Go プログラミング言語はオープンソースプロジェクトで,プログラマの生産性を上げます。

Go は表現力豊かで,すっきりして簡潔,なおかつ効率的な言語です。 並行メカニズムにより,マルチコアでネットワークにつながれたマシンの最大性能を引き出すプログラムを容易に書くことができます。 革新的な型システムがあり,柔軟でモジュール化されたプログラム構成となります。 Go は素早く機械語にコンパイルされます。 ガベージコレクションの便利さもあり,実行時のリフレクションも可能です。 速く,静的型付け,コンパイル言語でありながら,動的型付け,インタープリタ言語のような感覚でプログラムできます。

Go のインストール

Go をはじめよう

Go コンパイラ,ツール,ライブラリのダウンロードとインストールの説明

Go を学ぼう

Go ツアー

インタラクティブな Go の入門サイト。3 つのセクションからなっています。 最初のセクションは,基本的な構文とデータ構造。 2番目はメソッドとインターフェース。 3番目は Go の並行基本要素。 各セクションには練習問題があるため,理解を確かめることができます。オンラインツアー あるいは 次のようにローカルにインストールすることもできます。

$ go get golang.org/x/tour

これを実行すれば, tour バイナリがワークスペースの bin ディレクトリにできます。

最初の Go

動画もあります。 このドキュメントは,go コマンド を使っての,パッケージの取得,ビルド,インストール方法,また,コマンドとテストを実行する方法を載せています。

エディタプラグインと IDE

Go がサポートされている,よく使われるエディタプラグインと IDE をまとめたドキュメントです。

Go の良い書き方 - Effective Go

クリアで慣用的な Go コードを書くためのヒント。 Go を学び始めた人は必ず読みましょう。 ツアーと言語仕様を学んだ後に読むなら,理解が深まります。

診断 *

Go プログラムの問題を診断するツールの概要と方法論

よくある質問 (FAQ)言語設計 FAQ

Go についてのよくある質問に答えます。

Go Wiki

Go コミュニティによっとメンテナンスされている wiki。

さらに

ほかの Go 学習資料としては,学習 ページと Wiki をご覧ください。

レファレンス

パッケージ

Go 標準ライブラリのドキュメント

コマンド

Go ツールのドキュメント

言語仕様

Go の言語仕様。

Go のメモリモデル

1 つのゴルーチンがある変数を読み込む際に,他のゴルーチンから書き込まれた値を取得できることを保証するための条件についてのドキュメント。

リリース履歴

Go リリース間の変更の概要

記事

Go ブログ

Go プロジェクトの公式ブログ。ニュースや Go チームとゲストによる興味深い記事。

コード散歩

ガイド付き Go プログラムツアー

言語

パッケージ

ツール

さらに

ほかの Go の記事を読むには,WikiArticles page をご覧ください。

A Video Tour of Go

Go を速く,楽しく,生産的にするための 3 つのポイント: インターフェース,リフレクション,並行プログラミング。 簡単なウェブクローラを作って使い方を紹介します。

Code that grows with grace

Go の主要設計目標の一つは,コード柔軟性です。つまり,シンプルな設計が簡単に行えて,クリーンで自然な方法で実装できなければなりません。この話では, Andrew Gerrand が簡単な "チャットルーレット" サーバーを構築し,入力 TCP 接続をつなげます。それから,Go の並行メカニズム,インターフェース,標準ライブラリを使ってウェブインターフェースやその他の特徴を拡張していきます。プログラムの機能は大きく変化していきますが,Go の柔軟性のおかげで機能が増えても最初の設計は保たれたままです。

Go Concurrency Patterns

並行性はパフォーマンスの良いネットワークサービスを設計する際の鍵です。 Go の並行基本要素 (ゴルーチンとチャンネル) は,並行実行をシンプルで効果的に表現できます。この話では,扱いにくい並行問題をシンプルな Go コードでどのように美しく解決できるかを示します。

Advanced Go Concurrency Patterns

この話では, Go Concurrency Patterns の話から進め,Go の並行基本要素をさらに掘り下げます。

さらに

ほかの Go の話を見るには, Go Talks sitewiki page をご覧ください。

英語以外のドキュメント

WikiNonEnglish ページには,翻訳されたドキュメントのリストがあります。